Архив метки: Security

Переполнение буфера в глобальной области памяти

Написано много статей, постов и даже книг о переполнении буферов в стеке. Чуть меньше про переполнение буфера в куче. Но есть еще одна вещь, которую можно переполнить, и о которой пишут мало. Это буфер в глобальной области памяти (global memory). Хотя все эти проблемы сильно похожи друг на друга, тем не менее попробуем заполнить этот небольшой пробел с переполнениями буфера в глобальной памяти.

English version

Читать далее

Запуск Java вместе с AddressSanitizer

OpenJDK и AddressSanitizer довольно известные open-source проекты. OpenJDK содержит код на C/C++, который в отличие от кода на Java, может напрямую работать с памятью, что в свою очередь может привести к известным проблемам связанными с доступом за пределы выделенной памяти. Это всем известные и всевозможные переполнения буферов, use-after-ftee и прочие проблемы. Подобные проблемы могут быть обнаружены с помощью инструментов, которые называются runtime memory checkers. Одним из таких инструментов является AddressSanitizer. И теперь стало гораздо легче использовать AddressSanitizer вместе с OpenJDK.

English version is also available.

Читать далее

LDAP-инъекции

Каждый знает про SQL-инъекции (SQL injection). Это как знаменитость в мире ИБ. Но кроме них еще существует множество других разновидностей инъекций, которые могут лишь позавидовать популярности SQL-инъекций. И это не совсем справедливо. Устраним же эту несправедливость и поговорим о LDAP-инъекции (LDAP injection).

English version is here.

Читать далее

Хакеры в Лас Вегасе (BlackHat 2017)

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

BlackHat 2017 в Лас-Вегасе

Читать далее

Java и свет в конце DNS туннеля

Часто компании имеют свою внутреннюю сеть, которая подключена к интернету через маршрутизатор (или роутер, router). Обычно на таком маршрутизаторе работает firewall, который может фильтровать сетевой трафик. Бывает, что компания не хочет, чтобы компьютеры (и прочие устройства) из внутренней сети имели доступ к интернету. Это может уменьшить вероятность просачивания важной, секретной и не очень информации в интернет. Или начальство просто не хочет, чтобы работники сидели в их любимых социальных сетях в рабочее время. В таком случает firewall может быть настроен на блокирование большинства TCP/UDP соединений с интернетом. “DNS tunneling” может помочь при обходе такого firewall’а при условии, что он пропускает запросы к DNS серверам в интернете.

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

(English version – DNS tunneling with Java)

DNS туннель и Java

Читать далее