<?php
if ($username) { // Переменная не инициализируется перед использованием
$good_login = 1;
}
if ($good_login == 1) { // Если предыдущая проверка потерпела неудачу, переменная оказывается неинициализированной
readfile ("/highly/sensitive/data/index.html");
}
?>
Функции обработки ошибок в PHP
debug_backtrace — Generates a backtrace
debug_print_backtrace — Prints a backtrace
error_get_last — Get the last occurred error
error_log — Отправляет сообщение об ошибке
error_reporting — Sets which PHP errors are reported
restore_error_handler — Restores the previous error handler function
restore_exception_handler — Restores the previously defined exception handler function
set_error_handler — Sets a user-defined error handler function
set_exception_handler — Sets a user-defined exception handler function
trigger_error — Generates a user-level error/warning/notice message
user_error — Alias of trigger_error
XSS атаки на практике
В данной главе рассмотрено несколько примеров использования XSS-уязвимостей. Ниже будут рассмотрены следующие примеры:
· Дописывание в определённое место страницы произвольного HTML/JS-кода. Передача взломщику полного кода страницы.
· Получение доступа к cookies с ограниченной зоной действия.
· Манипуляции с формами в невидимом режиме.
|
|
· Выполнение произвольных действий незаметно для пользователя на примере phpBB.
· XSS – нападение с использованием Flash!-ролика.
Данные примеры осуществимы и с помощью активной (хранимой) XSS, но будем использовать пассивную XSS-атаку (кроме случая с Flash!), для экономии времени. Так же надо сказать о том, что придётся работать с дописыванием определённого кода в страничку. Метод document.write() для этого не подойдёт из-за некоторых его особенностей. Для осуществления всех идей будем пользоваться тэгом iframe и свойством innerHTML.