Umfang 242 seiten
2013 Jahr
Дневник охотника за ошибками. Путешествие через джунгли проблем безопасности программного обеспечения
Über das Buch
Книга «Дневник охотника за ошибками», написанная экспертом по безопасности программного обеспечения Тобиасом Клейном (Tobias Klein), рассказывает, как обнаруживаются и используются ошибки, найденные им в некоторых наиболее популярных во всем мире программных продуктах, таких как операционная система Apple iOS, медиапроигрыватель VLC, веб-браузеры и даже ядро операционной системы Mac OS X. В этом уникальном отчете вы увидите, как разработчики, по чьей вине произошли эти ошибки, исправили их – или же оказались не в состоянии это сделать.
Попутно вы познакомитесь:
- с приемами поиска ошибок, такими как идентификация и отслеживание движения пользовательских данных и инженерный анализ;
- с эксплуатацией уязвимостей, таких как разыменование нулевого указателя, переполнение буфера и преобразования типов;
- с принципами разработки концептуального программного кода, доказывающего наличие уязвимости;
- с правилами передачи извещений об ошибках производителям программного обеспечения или независимым брокерам.
Книга «Дневник охотника за ошибками» снабжена реальными примерами уязвимого кода и программ, использовавшихся для поиска и проверки ошибок. Неважно, охотитесь ли вы за ошибками только ради забавы, зарабатываете ли вы на этом или просто стремитесь сделать мир безопаснее, вы приобретете новые ценные навыки, наблюдая за тем, как действует профессиональный охотник за ошибками.
Genres und Tags
Тобиас Клейн (Tobias Klein) – автор трех книг по информационной безопасности. В книге «Дневник охотника за ошибками…» он виде личного дневника-отчета за 2005-2009 гг. методически последовательно и подробно описывается практические шаги обнаружения (а точнее, поиска и анализа) и эксплуатации семи реальных уязвимостей программного обеспечения различных производителей.
Многочисленные листинги исходных текстов и дизассемблирования, структуры и диаграммы, скриншоты (к сожалению, не всегда хорошего качества) иллюстрируют этот увлекательный процесс.
По каждой ошибке приводятся данные о ее ликвидации и полученных результатах, дополнительные материалы (с графиками исправления ошибки разработчиком программы – не все делают это оперативно!) и исчерпывающие ссылки на источники.
При поиске-охоте активно используется эффективный метод фаззинга (fаuzzing) – тестирование с использованием недопустимых или ошибочных данных.
В 3-х объемных приложениях, занимающих около 1/5 книги, приводятся:
– полезные подсказки для охотника уязвимостей (переполнение буфера, разыменование нулевого указателя, преобразование типов в языке C, затирание глобальной таблицы смещений),
– краткая информация об используемых отладчиках (Solaris Modular Debugger, WinDbg, gdb) и процедуре отладки,
– описание методов защиты от уязвимостей (приемы защиты, RELRO, Solaris Zones).
Есть предметный указатель, на сайте автора книги выложены дополнительные материалы.
Для новичков-тестировщиков описанные в книге процессы поиска будут практически познавательны, но при отсутствии опыта программирования тонкости будут не всегда понятны.
Для опытных программистов – C/C++ и ассемблера для x86 – будет интересен глубокий анализ и процесс анатомии уязвимостей.
Bewertungen, 1 Bewertung1