git-svn-id: http://webgoat.googlecode.com/svn/branches/webgoat-6.0@485 4033779f-a91e-0410-96ef-6bf7bf53c507
36 lines
2.6 KiB
HTML
36 lines
2.6 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||
<html>
|
||
<head>
|
||
|
||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||
<title>План урока</title>
|
||
</head>
|
||
<body>
|
||
|
||
<div align="Center">
|
||
<p><b>Название урока:</b> Как эксплуатировать проблемы одновременной работы нескольких потоков.</p>
|
||
</div>
|
||
|
||
<p><b>Тема для изучения:</b> </p>
|
||
<!-- Start Instructions -->
|
||
Веб-приложения могут обрабатывать множество HTTP-запросов одновременно.
|
||
Часто разработчики используют конструкции не приспособленные к многопоточной работе, и
|
||
это создаёт возможность использования ошибок связанных с одновременными обращениями.
|
||
Например когда одна и та же страница открывается одновременно разными пользователями и один их них видит
|
||
на ней данные другого.
|
||
Под приспособленностью к многопоточной работе подразумевается способность полей классов и объектов
|
||
всегда находиться в верном состоянии при выполнении множества одних и тех же операций вызываемых
|
||
разными потоками. Поскольку все потоки используют одно и то же рабочее пространство вызываемых методов, и в данном
|
||
пространстве хранятся данные всех свойств отдельно взятых классов, то множественные одновременные попытки
|
||
обращений к ним могут привести к неожиданным результатам.
|
||
<br>
|
||
<!-- Stop Instructions -->
|
||
<p><b>Основные цели:</b> </p>
|
||
В приложении урока пользователь может воспользоваться уязвимостю данного типа для того чтобы просматривать
|
||
авторизационные данные другого пользователя, если одновременно с ним попытается вызвать одну
|
||
и ту же функцию.
|
||
<b>Здесь вам придётся использовать два браузера</b>.
|
||
<br>
|
||
</body>
|
||
</html>
|