Как в целом обнаружены уязвимости безопасности клиента безопасности?

StackOverflow https://stackoverflow.com/questions/3034238

Вопрос

Я имею в виду в операционных системах или их приложениях. Единственный способ, которым я могу думать о том, - это изучить двоичные файлы для использования опасных функций, таких как strcpy (), а затем попытаться использовать тех. Хотя с улучшениями компилятора, такие как Visual Studio's / GS Switch, эта возможность должна быть в основном в прошлом. Или я ошибаюсь?

Какие другие способы люди используют для поиска уязвимостей? Просто загрузите цель в отладчик, затем отправьте неожиданный ввод и посмотрите, что происходит? Это похоже на длительный и утомительный процесс.

Может ли кто-нибудь порекомендовать несколько хороших книг или веб-сайтов на эту тему?

Заранее спасибо.

Это было полезно?

Решение

Существует два основных вопроса, связанные с «Безопасность клиентов».

Наиболее распространенным клиентом, эксплуатируемым сегодня, является браузер в форме «Ездить по загрузкам«. Чаще всего уязвимости коррупции памяти виноваты. ActiveX Com объекты были общим путем в системах Windows и Axman. Является хорошим вездером ActiveX.

С точки зрения систем защиты памяти A / GS - это канарейка, и это не все, все для остановки переполнения буфера. Он только направлен на защиту от переполнения на основе стека, которые пытаются перезаписать обратный адрес и управлять EIP. Зоны NX и канарецы - это хорошие вещи, но ASLR может быть намного лучше при остановке коррупции памяти, и не все реализации ASLR сделаны одинаково безопасными. Даже со всеми тремя этими системами вы все еще собираетесь взломаться. IE 8 работает на Windows 7, имел все это, и это был один из первых взлома на PWN2own и вот Как они это сделали. Отказ Он участвовал в цепочке переполнения кучи и уязвимость висящей указателя.

Проблема с «защитой от клиента» CWE-602: защита от клиента безопасности серверной безопасности создаются, когда сторона сервера доверяет клиенту секретные ресурсы (например, пароли) или для отправки отчета о конфиденциальной информации, такой как Поиск игроков в вспышке.

Лучший способ поиска проблем со стороны клиента - смотреть на трафик. Wireshark - это лучшее для нерубризера Client / Server Protocols. Однако Tamperdata. Является безусловно, лучшим инструментом, который вы можете использовать для браузеров на основе платформ, таких как Flash и JavaScript. Каждый случай будет другим, в отличие от переполнения буфера, где его легко увидеть процесс сбоя процесса, вопросы доверия клиента все о контексте, и требуется опытный человек, чтобы посмотреть на сетевой трафик, чтобы выяснить проблему.

Иногда глупые программисты будут жесткокодят пароль в их приложение. Его тривиально, чтобы декомпилировать приложение для получения данных. Флэш-декомпиляция очень чистая, и вы даже получите полные имена переменной и кодовые комментарии. Другой вариант использует отладчик, как ollydbg, чтобы попытаться найти данные в памяти. IDA-PRO - лучший декомпилятор для приложений C / C ++.

Другие советы

Написание безопасного кода, 2-е издание, включает немного о моделировании и тестировании угроз, и намного больше.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top