🤔 Почему это важно: Многие забывают, что парсинг HTML на бекенде — сложный процесс, и даже стандартные парсеры популярных языков программирования не реализованы полностью.

🐍 Пример на Python:

python
from html.parser import HTMLParser class MyHTMLParser(HTMLParser): def handle_starttag(self, tag, attrs): print(f"{tag}") for attr in attrs: print(f" ->{attr[0]}: {attr[1]}") def handle_endtag(self, tag): pass def handle_startendtag(self, tag, attrs): print(f"{tag}") for attr in attrs: print(f" ->{attr[0]}: {attr[1]}") def handle_data(self, data): pass html_string = input() parser = MyHTMLParser() parser.feed(html_string)

🛑 Проблема: Стандартная библиотека Python не учитывает, что для тегов "iframe", "noembed", "noframes", "noscript", "plaintext", "title", "textarea", "xmp" содержимое не обрабатывается как HTML теги.

💡 Пример использования: При вводе:

html
<textarea><a href="x></textarea><img src=x onerror=alert()//">

Результат парсинга не учитывает теги "textarea" и "a" полностью, что может привести к недооценке угрозы Server Side XSS.

🚧 Совет: Не забывайте о подобных особенностях при разработке и эксплуатации Server Side XSS. Будьте внимательны к деталям и используйте надежные инструменты для парсинга HTML.



*

Отправить комментарий (0)
Новые Старые