Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
книги хакеры / практический хакинг.pdf
Скачиваний:
23
Добавлен:
19.04.2024
Размер:
31.35 Mб
Скачать

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

тернета вещей» из пакета документации OWASP). Тестирование про-

 

 

 

 

 

m

w Click

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

верки ввода приложения может длиться очень долго, поскольку оноdf-x chan

.c

 

 

.

 

 

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

e

 

предусматривает тестирование всех типов атак с использованием ввода, включая внедрение SQL, межсайтовое выполнение сценариев (XSS), внедрение команд операционной системы и внедрение внеш- него объекта XML (XXE).

Логические ошибки

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

Сервер приложений

Убедитесь, что сервер размещает приложение безопасно. Защищен- ное веб-приложение, размещенное на небезопасном сервере прило- жений, теряет свои возможности защиты. Протестируйте безопас­ ность сервера: используйте сканеры уязвимостей, чтобы выявить наличие ошибок сервера приложений и открытых уязвимостей. Кро- метого,проверьтевозможносьатакдесериализациииубедитесьвна- дежности всех файрволов веб-приложений. Проверьте правильность конфигурации сервера, например списки каталогов, содержимое по умолчанию и рискованные методы HTTP. Вы также можете оценить надежность SSL/TLS,проверку слабых шифров,самозаверяющих сер- тификатов и других распространенных уязвимостей.

Исследование конфигурации хоста

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

Учетные записи пользователей

Проверьте, насколько безопасно настроены учетные записи пользо- вателей в системе. Этот шаг включаеттестирование на наличие учет-

Методология тестирования безопасности­   81

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

F

 

 

 

 

 

 

t

 

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

 

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

ных записей пользователей по умолчанию и проверку устойчивости

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

w Click

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

df-x chan

 

o

 

политик учетных записей. Такие политики включают историю паро-

.

.c

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

e

 

лей (можно ли использовать старые пароли, а если да, то когда допу-

 

 

 

 

 

 

 

 

 

 

скается их повторное использование), срок действия пароля (как ча-

 

 

 

 

 

 

 

 

 

 

сто система заставляет пользователей менять пароли) и механизмы

 

 

 

 

 

 

 

 

 

 

блокировки (сколько попыток ввода учетных данных предоставляет-

 

 

 

 

 

 

 

 

 

 

ся пользователю, прежде чем система заблокирует его доступ к учет-

 

 

 

 

 

 

 

 

 

 

ной записи). Если IoT-устройство принадлежит к корпоративной

 

 

 

 

 

 

 

 

 

 

сети,примите во внимание политику безопасности­

компании,чтобы

 

 

 

 

 

 

 

 

 

 

обеспечить согласованность учетных записей. Например, если поли-

 

 

 

 

 

 

 

 

 

 

тика безопасности­

организации требует,чтобы пользователи меняли

 

 

 

 

 

 

 

 

 

 

свои пароли каждые шесть месяцев, проверьте, что все учетные за-

 

 

 

 

 

 

 

 

 

 

писи соответствуют политике. В идеале, если система позволяет ин-

 

 

 

 

 

 

 

 

 

 

тегрировать учетные записи со службами Active Directory или LDAP,

 

 

 

 

 

 

 

 

 

 

компания должна иметь возможность централизованно применять

 

 

 

 

 

 

 

 

 

 

эти политики через сервер.

 

 

 

 

 

 

 

 

 

 

 

 

Этот этап тестирования может показаться чересчур рутинным, но

 

 

 

 

 

 

 

 

 

 

он один из самых важных. Злоумышленники часто пользуются не-

 

 

 

 

 

 

 

 

 

 

надежными настройками учетных записей, которые не управляются

 

 

 

 

 

 

 

 

 

 

централизованно,иблагодаряэтомувконечномсчетеостаютсянеза-

 

 

 

 

 

 

 

 

 

 

меченными.В ходе тестирования мы часто обнаруживаем локальные

 

 

 

 

 

 

 

 

 

 

учетныезаписипользователейспаролем,идентичнымлогинуиуста-

 

 

 

 

 

 

 

 

 

 

новленным на неограниченный срок.

 

 

 

 

 

 

 

 

 

 

 

 

Надежностьпароля

Проверьтебезопасность­ паролейучетныхзаписейпользователей.На- дежность пароля важна, потому что злоумышленники могут угадать слабые учетные данные с помощью автоматизированных средств. Проверьте, соблюдаются ли требования к сложности пароля с помо- щью групповых или локальных политик в Windows и подключаемых модулей аутентификации (PAM) в системах на базе Linux, с одним предостережением: требования аутентификации не должны влиять на рабочий процесс. Рассмотрим следующий сценарий: хирургиче- ская система применяет сложный пароль в 16 символов и блокирует доступ пользователей к учетной записи послетрех неправильных по- пыток.Это готовый путьк катастрофе,когда у хирурга или медсестры возникает экстренная ситуация, а другого способа аутентификации всистеменет.Вслучаях,когдасчетидетнасекундыинакартупостав- лены жизни пациентов,система безопасности­ недолжна становиться неодолимым препятствием.

Привилегии учетной записи

Убедитесь, что учетные записи и службы настроены по принципу минимальных прав – другими словами, они могут получить доступ только к тем ресурсам, которые им нужны, и не более того. Обычно мы видим плохо настроенное программное обеспечение без деталь-

82  Глава 3

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

F

 

 

 

 

 

 

t

 

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ного разделения привилегий. Например, часто основной процесс не

 

 

 

 

 

m

 

 

w Click

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

сбрасывает повышенные привилегии, когда они ему больше не нужd-f-x chan

.c

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

e

 

ны,или система позволяетразличным процессам работатьпод одной

 

 

 

 

 

 

и той же учетной записью. Этим процессам обычно требуется доступ

 

 

 

 

 

 

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

 

 

 

 

 

 

вило ограничения,они в конечном счете накапливают чересчур мно-

 

 

 

 

 

 

го привилегий; после взлома они предоставляют злоумышленнику

 

 

 

 

 

 

полный контроль над системой. Мы также часто находим простые

 

 

 

 

 

 

службы ведения журналов, работающие с правами SYSTEM или root.

 

 

 

 

 

 

«Риск,сопряженный с чрезмерными привилегиями»–такую пометку

 

 

 

 

 

 

мы делаем почти в каждом своем отчете об оценке безопасности­

.

 

 

 

 

 

 

 

 

 

 

Вчастности,всистемахWindowsпроблемуможнорешитьспомощью­

 

 

 

 

 

 

управляемых учетных записей служб,которые позволяютизолировать

 

 

 

 

 

 

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

 

 

 

 

 

 

жениями, и автоматизировать управление их учетными данными.

 

 

 

 

 

 

В системах Linux использование таких механизмов безопасности­

, как

 

 

 

 

 

 

capabilities, seccomp (заносящих в белый список системные вызовы), SELinux и AppArmor поможет ограничить права процесса и укрепить защиту операционных систем. Кроме того, в управлении учетной за- писью полезны такие решения,как Kerberos,OpenLDAP и FreeIPA.

Уровни патчей

Убедитесь, что операционная система, приложения и все сторонние библиотеки актуальны и регулярно обновляются.Патчи важны,слож- ны и часто недооценены. Тестирование устаревшего программного обеспечения может показаться рутинной задачей (которую обычно можно автоматизировать с помощью инструментов сканирования уязвимостей), но почти нигде вы не найдете полностью обновлен- ную экосистему. Чтобы обнаружить компоненты с открытым исход- ным кодом с известными уязвимостями, используйте инструменты анализа состава программного обеспечения, которые автоматически проверяют сторонний код на предмет отсутствующих исправлений. Чтобы обнаружить отсутствующие исправления для операционной системы,выможетеполагатьсянасканированиеуязвимостейсаутен­ тификацией или даже проверять их вручную. Не забудьте проверить, поддерживаютлипоставщикиIoT-устройствактуальнуюверсиюядра Windows или Linux; вы не раз убедитесь, что это не так.

Компонентысистемыобновлений–одинизнедостатковиндустрии информационной безопасности­ и в особенности мира интернета ве- щей. Одна из основных причин в том, что встроенные устройства по своей природе труднее поддаются изменениям: они часто использу- ют сложную неизменяемую прошивку. Другая причина заключается в том, что обновление и исправление некоторых систем, таких как банкоматы, на регулярной основе может быть непомерно дорогим ввиду высокой стоимости простоя (времени, в течение которого кли- енты не могут получить доступ к системе) и объема работы. Что же касается узкоспециализированных систем, таких как медицинские

Методология тестирования безопасности­   83

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

устройства, поставщик должен сначала провести тщательное тести-

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

w Click

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

df-x chan

 

o

 

рование, прежде чем выпустить новый патч. Вы же не хотите, чтобы

.

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

e

 

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

В ходе тестирования мы часто видим, что стороннее программное обеспечение используется без обновлений,даже если основные ком- поненты актуальны. Распространенные примеры в Windows – Java, некоторые продукты Adobe и даже Wireshark. На устройствах Linux часто встречаются устаревшие версии OpenSSL.Иногда программное обеспечение установлено без определенной цели, и лучше удалить его, а не пытаться установить для него процесс исправления. Зачем нужно устанавливать Adobe Flash на сервере, который взаимодей- ствует с ультразвуковым аппаратом?

Удаленное обслуживание

Проверьте безопасность­ удаленного обслуживания и поддержку под- ключениядляустройства.Частовместотого,чтобыотправитьустрой- ство поставщику на доработку, организация звонит ему и предлагает сотрудникам техподдержки удаленно подключаться к системе. Злоу- мышленники иногда используют функции удаленного подключения как лазейки, обеспечивающие административный доступ. Большин- ство этих методов небезопасно.Примером можетслужитьвзлом сети магазинов Target, когда злоумышленники проникли в основную сеть магазина через стороннюю HVAC-компанию.

Поставщики могут обновлять устройства удаленно, но обычно это не лучший способ своевременно обновлять устройства интернета ве- щей в вашей сети. Поскольку некоторые из этих устройств слишком чувствительные и сложные, сотрудники компании не могут просто начать скрытно устанавливать на них обновления; всегда есть шанс что-то нарушить. А что, если устройство выйдет из строя в самый острый момент (взять, к примеру, компьютерный томограф в боль- нице или датчик критической температуры на электростанции)?

Важнооценитьнетолькопрограммноеобеспечениедляудаленной поддержки (в идеале путем реинжиниринга его двоичных файлов) и его канал связи, но и установленный процесс удаленного обслужи- вания. Использует ли объект круглосуточную связь? Существует ли двухфакторная аутентификация при подключении поставщика? Ве- дется ли журнал?

Управление доступом к файловой системе

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

84  Глава 3