
f4cf9a60810c60531179d9c09d45d71e.ppt
- Количество слайдов: 17
ХАКЕРИ в Internet - сайтът се доверява на външен (несигурен) източник; -сайтът изобразява input като output: Helo, <% Response. Write(Request. Querystring(“name”)) %> Тогава, например, нормална потребителска заявка, която включва input (включен в заявката към сървър) може да изглежда така: www. conto. com/req. asp? name=Ivan
Не толкова добре ще е ако хакер е вмъкнал код, който уж предоставя възможност за link към същия (доверен) site, а всъщност създава предпоставка за генериране на заявка от вид : Click here to win $1 000 и блокът: “scriptcode” например изглежда така (което е сравнително безобидно): А за да не види нищо жертвата (заблуденият user на сайта), блокът може да изглежда и така: click here to win $1 000 (това е същото като по-горе, но маскирано в ESC пследователности на символите) натрапникът може да използва и малко известен , но валиден URL формат: http: //username: password@webserver Тогава частта www. microsoft. com се интерпретира като username, следвана от истинския Web site, при това кодиран, та user’ът да не подозре нищо.
Изобщо, използваното по-горе поле ‘name’ може да съдържа не име, а HTML или дори Java. Script, с които да се изпълни достъп до потребителски данни, например: потребителското cookie. Cookies са винаги свързани с домейна под чието ръководство са били създадени. ( Напр. Cookies, свързани с домейн conto. com ще са достъпни само от страници на този домейн и от никой друг. Когато user кликне на link както беше в примера, кодът е свален от conto. com и изпълнява достъп до cookies от домейна conto. com. Само 1 “лоша”страница, вързала се към домейна, ще е достатъчна за да стане той несигурен. (могат да се вземат неподозирано данни от чуждия сайт и да се прехвърлят към хакерския) Значи чрез XSS, cookies могат да се четат и променят. Така и с всичко привързано към домейна (Active. X контроли, RPC и др) Хакерът може да вгради “измамен” сайт, стига да има XSS пробив (spoofing). Напр псевдо “news site Web server”. Потребител кликва на link , и неговия обектен модел и security context става достъпен. Той може дори да получи “псевдо-новини”, доставени му от site на атакуващия
Какво всъщност става хакер Какво изглежда на потребител жертва web site 1. изпраща например e-mail с link към web site 2. user кликва на link доставен от атакуващия кликването препраща към друг site отговорът са някакви 3. script се изпълнява в context на сайта на жертвата данни за заблуда потребителя как XSS (cross site scripting) атаките работят
ето код, който след кликване на link, изпраща cookie’то на userа към друг сайт (зададен от хакера): > Вмъква форма със скрито поле Кликни тук и печелиш! Прави това, което не трябва. Взима лична информация и я submit а> Причината правеща възможни XSS атаките е че код и данни са примесени заедно
Някои бележки: 1. имайки достъп до cookie, хакерът може да го зарази (със свой добавен код) и всеки път впоследствие, когато потребителят кликне link към въпросния сайт, скриптът ще се изпълнява. 2. XSS атаки могат да се извършат и зад firewall (конфигуриран така че сървърите вътре са trusted, а вън ‘not trusted’): по описаната схема, хакерски сървър отвън подлъгва вътрешен клиент (че е вътрешен), кара го да изпълни нещо и … Единственото което трябва е да знае хакерът е име на сървър зад защитната стена, който да поддържа собствени слаби проверки. 3. ако сайтът е написан така, че въведени от потребител данни се вместват директно в скрипт на същата страница, хакерът е допълнително облекчен: даже не е нужно да добавя свой