www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Авторам
Рекламодателям
Контакты
   

  Опросы
1001 и 1 книга  
19.03.2018г.
Просмотров: 10723
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 10849
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 8304
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 5091
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 5954
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 5868
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 8682
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 5264
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 5519
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 9683
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 13086
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 14550
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 16290
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 11189
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 9142
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 7419
Комментарии: 4
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 6510
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 5427
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 5057
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 5329
Комментарии: 1
Рецензия на книгу «MongoDB в действии»

 Читать далее...

Друзья сайта  

 Проводим тест на проникновение. Часть 5. Поиск уязвимостей в «самописных» приложениях

Архив номеров / 2016 / Выпуск №10 (167) / Проводим тест на проникновение. Часть 5. Поиск уязвимостей в «самописных» приложениях

Рубрика: Безопасность /  Аудит

Андрей Бирюков АНДРЕЙ БИРЮКОВ, системный архитектор по информационной безопасности, abiryukov@samag.ru

Проводим тест на проникновение
Часть 5. Поиск уязвимостей в «самописных» приложениях

Проводить проверку на уязвимости для «самописного» ПО также необходимо, как и для сторонних приложений. Расскажем, как это сделать самостоятельно

В предыдущих статьях цикла [1-4] подробно рассмотрены различные способы проникновения в корпоративную сеть. При этом был затронут вопрос поиска и эксплуатации уязвимостей. Продолжим обсуждение проведения аудита информационной безопасности и поговорим о поиске уязвимостей в «самописном» программном обеспечении.

Суть вопроса

Не секрет, что многие компании используют в своих бизнес-процессах программное обеспечение собственной разработки. При этом качество данного ПО может быть различным. Крупные организации для разработки ПО прибегают к услугам компаний-разработчиков или нанимают квалифицированных программистов себе в штат. Те, у кого денег не такмного, для разработки ПО могут привлекать фрилансеров и студентов. С точки зрения безопасности и качества ПО наилучшим является первый вариант, когда для создания приложения привлекается компания-разработчик. В этом случае она не только несет ответственность за создаваемое ею программное обеспечение, но и за исправление найденных внем ошибок. Очевидным недостатком такого метода является высокая стоимость разработки. Второй вариант предполагает нанимать программистов в штат компании на постоянной основе. Здесь качество софта будет во многом зависеть от квалификации нанятых специалистов. С точки зрения экономии зачастую данный вариант не сильно дешевле первого. Ну атретий вариант наиболее распространенный. Компании привлекают людей на стороне для выполнения разовых задач. Зачастую приложение разрабатывает один человек, а егодоработку и модернизацию ведет уже другой. Еще «веселее» бывает, когда доработка ведется в отсутствии исходных кодов приложения. В этом случае качество разрабатываемого ПО страдает сильнее всего.

Зачем это нужно

Любое ПО содержит ошибки. Разработчика, будь то серьезная компания, или фрилансера, как правило, поджимают сроки. Чтобы успеть, он осознанно или нет допускает ошибки впрограммном обеспечении. Однако программные продукты (как бесплатные, так и коммерческие), которые разрабатываются для массового использования, находятся, чтоназывается, у всех на виду. На портале Securityfocus.com [5] ежедневно публикуются отчеты о десятках новых дыр, найденных экспертами по информационной безопасности совсего мира. А вот ПО, разрабатываемое для нужд конкретных заказчиков, независимые специалисты не проверяют. Многие могут возразить, что раз об этих приложениях никто незнает, то и эксплуатировать уязвимости в них будет сложнее. Но «безопасность через неизвестность» (security through obscurity) – это не очень хорошая практика, так как проникший в корпоративную сеть злоумышленник сможет без труда найти дыру в самописном ПО.

Таким образом, мы приходим к выводу, что проводить проверку на уязвимости для «самописного» ПО также необходимо, как и для сторонних приложений. Однако в силу приведенных выше причин описанные в предыдущих статьях инструменты Nessus, Open VAS и Metasploit будут нам не слишком полезны. В лучшем случае мы сможем идентифицировать открытые порты и уязвимые библиотеки, которые использовали разработчики (например, OpenSSL).

Далее мы будем рассматривать два варианта поиска уязвимостей: с исходными текстами программы и без него.

Статью целиком читайте в журнале «Системный администратор», №10 за 2016 г. на страницах 38-43.

PDF-версию данного номера можно приобрести в нашем магазине.


  1. Бирюков А. Проводим пентест. Часть 1. Проникаем в беспроводную сеть. //«Системный администратор», №4, 2016 г. – С. 40-44 (http://samag.ru/archive/article/3171).
  2. Бирюков А. Проводим пентест. Часть 2. Сбор необходимой информации. //«Системный администратор», №5, 2016 г. – С. 27-31 (http://samag.ru/archive/article/3190).
  3. Бирюков А. Проводим пентест. Часть 3. Ищем уязвимости. //«Системный администратор», №6, 2016 г. – С. 24-29 (http://samag.ru/archive/article/3211).
  4. Бирюков А. Проводим пентест. Часть 4. Используем уязвимости. //«Системный администратор», №7-8, 2016 г. – С. 47-51 (http://samag.ru/archive/article/3237).
  5. Портал, посвященный различным уязвимостям – http://securityfocus.com.
  6. Дистрибутив RATS – https://packages.debian.org/wheezy/rats.
  7. Описание RATS. Анализатор исходных кодов RATS – https://habrahabr.ru/post/241648.
  8. Статья, посвященная работе памяти при переполнении буфера – https://habrahabr.ru/post/266591.
  9. Сайт minidump – http://www.microsoft.com/downloads/details.aspx?FamilyID=b2307ca4-638f-4641-9946-dc0a5abe8513&displaylang=en.
  10. Сайт filefuzz – http://filefuzz.software.informer.com/2.0.
  11. Сайт peachfuzzer – http://www.peachfuzzer.com.
  12. Сайт Immunity Debugger – http://www.immunitysec.com/products/debugger.
  13. Саттон М., Грин А., Амини П. Fuzzing: Brute Force Vulnerability Discovery / Fuzzing: Исследование уязвимостей методом грубой силы.
  14. Penetration Testing with Kali Linux – учебные материалы Offensive Security – https://www.offensive-security.com/information-security-training/penetration-testing-training-kali-linux.
  15. Application Inspector – http://www.ptsecurity.ru/products/ai.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru