Как стать автором
Обновить
42
0.1

Пользователь

Отправить сообщение

Об одном способе веб-скрапинга сайтов, защищенных Cloudflare

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 14K

Сразу оговорюсь, что описанное ниже носит исключительно информационно-образовательный характер, и не имеет целью нанесение какого-либо ущерба компаниям, использующим защиту из заголовка статьи. По этим же причинам фокусировка статьи именно на том, как получить заветный html «как из браузера» в автоматизированном режиме, и здесь не будет идти речь о каких-то массовых распараллеливаниях через proxy и VPN, подкладываниях отпечатков (finger prints) браузеров и т. д.

Узнать о способе обхода защиты Cloudflare
Всего голосов 28: ↑27 и ↓1 +26
Комментарии 31

Nuclei — это просто

Уровень сложности Простой
Время на прочтение 11 мин
Количество просмотров 7.1K

Обязательный инструмент для всех багхантеров!

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

Так что не стоит откладывать эту выполнимую задачу на потом - начинайте изучение nuclei прямо сейчас!

Усовершенствуйте тестирование с nuclei!
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Наиболее распространенные уязвимости в мобильных приложениях

Время на прочтение 24 мин
Количество просмотров 9.8K

Всем привет, меня зовут Юрий Шабалин, я один из основателей компании "Стингрей Технолоджиз" (входит в группу компаний Swordfish Security), мы разрабатываем платформу анализа защищенности мобильных приложений iOS и Android. Этой статьей я бы хотел открыть серию материалов, посвященных мобильной безопасности. И сегодня поговорить о тех уязвимостях, что мы встречаем чаще всего при автоматическом анализе.

Читать далее
Всего голосов 17: ↑17 и ↓0 +17
Комментарии 3

Использование Service Worker для создания ботнета

Время на прочтение 4 мин
Количество просмотров 23K


Если кратко: в этом посте мы рассмотрим один из множества способов запуска бесконечного выполнения кода Javascript в браузере с помощью Service Worker, а еще немного покритикуем саму технологию.
Читать дальше →
Всего голосов 42: ↑42 и ↓0 +42
Комментарии 6

Turbo Intruder и потерянное руководство пользователя

Время на прочтение 14 мин
Количество просмотров 7.1K

Практически каждый, кто хоть немного пользовался Burp Suite, знает про Intruder – инструмент внутри Burp, который позволяет автоматизировать атаки на веб-приложения, такие как брутфорс, фаззинг, майнинг параметров.

Однако, Intruder имеет много ограничений. Например, в Intruder не так много возможностей для генерации и предобработки пейлоадов, а также он плохо подходит для тестирования сложных многоступенчатых атак и race condition. Все это делает Intruder не настолько универсальным инструментом, насколько хотелось бы.

К счастью, существует более изящный инструмент с желаемой функциональностью - расширение Turbo Intruder. Инструмент отличный, но у него отсутствует нормальная документация. Скорее всего многие про него слышали и даже пытались разобраться. Для тех, кто разобраться не смог – предназначена эта статья.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 0

Пишем расширение для Burp Suite с помощью Python

Время на прочтение 16 мин
Количество просмотров 4.3K

Привет, Хабр!

Думаю многие знают о таком инструменте, как Burp Suite от PortSwigger. Burp Suite – популярная платформа для проведения аудита безопасности веб-приложений. Помимо того, что Burp и так содержит тонну полезных функций, он еще и дает возможность пользователям создавать свои расширения, позволяющие невероятно увеличить встроенный функционал приложения.

Однако, статей по созданию расширений на Python в интернете не так и много, думаю, здесь сказалось то, что Burp написан на Java, и документация для расширений, естественно, описывает работу с Java. Но что поделать, расширения очень нужны и помогают получить преимущество, если речь идет о Bug Bounty. Так что предлагаю сегодня рассмотреть азы создания расширений для Burp Suite на Python, а писать мы будем непосредственно пассивный сканер CORS misconfiguration.

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Комментарии 0

Уязвимости в коде. Как отличить опасную брешь от незначительной ошибки?

Время на прочтение 18 мин
Количество просмотров 13K
Как обычно выглядит проверка кода приложений на уязвимости? Специалист по безопасности инициирует процедуру, код сканируется, в приложении обнаруживаются тысячи уязвимостей. Все — и безопасник, и разработчики — в шоке. Естественная реакция разработчика: «Да наверняка половина — это ложные срабатывания, а другая — некритичные уязвимости!»

Что касается ложных срабатываний, здесь все просто: можно взять и посмотреть непосредственно те места кода, где обнаружены уязвимости с подозрением на false positive. Действительно, какая-то их часть может оказаться ложными срабатываниями, (хотя явно не половина от общего числа).

А вот о том, что критично, а что нет, хотелось бы поговорить более предметно. Если вы понимаете, почему сейчас уже нельзя использовать SHA-1 и зачем экранировать «;», возможно, эта статья не откроет вам чего-то нового. Но если по итогам сканирования от найденных уязвимостей рябит в глазах, добро пожаловать под кат – расскажем, какие «дыры» чаще всего встречаются в мобильных и веб-приложениях, как они работают, как их исправить, а главное — как понять, что перед вами — опасная брешь или незначительная ошибка в коде.


Читать дальше →
Всего голосов 25: ↑25 и ↓0 +25
Комментарии 1

Протестируй меня полностью: кому и зачем нужен внутренний пентест

Время на прочтение 5 мин
Количество просмотров 6.2K

Опаснее всего враг, о котором не подозреваешь.
(Фернандо Рохас)

ИТ-инфраструктуру современной компании можно сравнить со средневековым замком. Высокие стены, глубокий ров и стража у ворот защищают от внешнего врага, а за тем, что происходит внутри крепостных стен, практически никто не следит. Так же и многие компании: они прилагают колоссальные усилия для защиты внешнего периметра, а внутренняя инфраструктура при этом остается обделенной. Внутреннее тестирование на проникновение – для большинства заказчиков пока процесс экзотический и не очень понятный. Поэтому мы решили рассказать о нем все (ну, почти все), что вы хотели знать, но боялись спросить.
Читать дальше →
Всего голосов 18: ↑16 и ↓2 +14
Комментарии 0

Реализация ARP-спуфинга на Python

Время на прочтение 4 мин
Количество просмотров 16K

Введение


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

Предполагается, что Вы уже знакомы с тем, как работает ARP-протокол и его недостатком, если нет, то советую прочитать вот эту статью.

Я не являюсь высококвалифицированным специалистом Информационной Безопасности, поэтому прошу тапками не кидать, а любые неточности оговорить в комментариях.
Читать дальше →
Всего голосов 24: ↑24 и ↓0 +24
Комментарии 4

Проверка сайта на уязвимости своими силами с использованием Wapiti

Время на прочтение 6 мин
Количество просмотров 27K

image
В прошлой статье мы рассказали о Nemesida WAF Free — бесплатном инструменте для защиты сайтов и API от хакерских атак, а в этой решили сделать обзор популярного сканера уязвимостей Wapiti.


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


Nikto, W3af (написан на Python 2.7, поддержка которого закончилась) или Arachni (с февраля более не поддерживается) — наиболее популярные решения, представленные в бесплатном сегменте. Разумеется, есть и другие, например, Wapiti, на котором мы решили остановимся.

Читать дальше →
Всего голосов 10: ↑8 и ↓2 +6
Комментарии 2

Проверяем уровень защищённости Linux с помощью утилиты Lynis

Время на прочтение 8 мин
Количество просмотров 41K
Разбираемся, как использовать одну из самых мощных свободно распространяемых утилит для аудита Linux-систем.


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

Чтобы получить информацию о системе, то есть проверить общее состояние программного обеспечения, сети и служб, работающих на вашем компьютере с установленной ОС Linux, достаточно выполнить несколько команд. Но что теперь делать с полученной информацией? Как в ней разобраться? Ведь объём данных, которые вам нужно проанализировать, огромен.
Читать дальше →
Всего голосов 45: ↑45 и ↓0 +45
Комментарии 5

Коты в коробочках, или Компактные структуры данных

Время на прочтение 12 мин
Количество просмотров 28K

image


Как быть, если дерево поиска разрослось на всю оперативку и вот-вот подопрет корнями соседние стойки в серверной? Что делать с инвертированным индексом, жадным до ресурсов? Завязывать ли с разработкой под Android, если пользователю прилетает «Память телефона заполнена», а приложение едва на половине загрузки важного контейнера?


В целом, можно ли сжать структуру данных, чтобы она занимала заметно меньше места, но не теряла присущих ей достоинств? Чтобы доступ к хэш-таблице оставался быстрым, а сбалансированное дерево сохраняло свои свойства. Да, можно! Для этого и появилось направление информатики «Succinct data structures», исследующее компактное представление структур данных. Оно развивается с конца 80-х годов и прямо сейчас переживает расцвет в лучах славы big data и highload.


А тем временем на Хабре найдется ли герой, способный пересковоговорить три раза подряд
[səkˈsɪŋkt]?

Читать дальше →
Всего голосов 127: ↑127 и ↓0 +127
Комментарии 43

Тестирование двухфакторной аутентификации и возможные варианты обхода

Время на прочтение 12 мин
Количество просмотров 34K


Еще до того, как я начал постигать сложную науку информационной безопасности, мне казалось, что 2FA аутентификация — это гарантированный способ защитить свой аккаунт и никакие «эти ваши хакеры» не смогут, скажем, увести мою внутреннюю валюту для покупки одежды персонажам на игровом аккаунте. Но с течением времени опытным путем было доказано,  — система двухфакторной аутентификации может иметь большое количество уязвимостей. 
Читать дальше →
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 10

Сложность простоты

Время на прочтение 31 мин
Количество просмотров 42K


Как я писал в предисловии предыдущей статьи, я нахожусь в поисках языка, в котором я мог бы писать поменьше, а безопасности иметь побольше. Моим основным языком программирования всегда был C#, поэтому я решил попробовать два языка, симметрично отличающиеся от него по шкале сложности, про которые до этого момента приходилось только слышать, а вот писать не довелось: Haskell и Go. Один язык стал известен высказыванием "Avoid success at all costs"*, другой же, по моему скромному мнению, является полной его противоположенностью. В итоге, хотелось понять, что же окажется лучше: умышленная простота или умышленная строгость?


Я решил написать решение одной задачки, и посмотреть, насколько это просто на обоих языках, какая у них кривая обучения для разработчика с опытом, сколько всего надо изучить для этого и насколько идиоматичным получается "новичковый" код в одном и другом случае. Дополнительно хотелось понять, сколько в итоге мне придется заплатить за ублажание хаскеллевского компилятора и сколько времени сэкономит знаменитое удобство горутин. Я старался быть настолько непредвзятым, насколько это возможно, а субъективное мнение приведу в конце статьи. Итоговые результаты меня весьма удивили, поэтому я решил, что хабровчанам будет интересно почитать про такое сравнение.

Читать дальше →
Всего голосов 91: ↑84 и ↓7 +77
Комментарии 278

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

Время на прочтение 3 мин
Количество просмотров 9.1K
Безопасность на реальных примерах всегда более интересна.

Как тестировщик на проникновение, люблю, когда приходят проекты, построенные на фреймворках быстрой разработки (Rapid development), подобно Ruby-on-Rails, Django, AdonisJs, Express и так далее. Они позволяют очень быстро строить систему за счет того, что бизнес модели прокидываются сразу на все уровни, включая клиентский браузер. Model (модели бизнес объектов в базе) и ViewModel (контракт взаимодействия с клиентами) такие фреймворки часто объединяют вместе, чтобы избежать лишнего перекладывания из Model во ViewModel и обратно, REST сервисы автоматом генерируются. C точки зрения разработки можно просто разработать бизнес модель на сервере, и потом использовать ее сразу на клиенте, что несомненно увеличивает скорость разработки.

Еще раз, я не утверждаю, что вышеупомянутые фреймворки плохие, или с ними что-то не то, у них есть средства и инструменты правильной защиты, просто с ними разработчики делают больше всего ошибок. Такое встречал и на одном ASP.NET MVC проекте, в котором разработчики наделали те же уязвимости, выставляя Models вместо ViewModels…
Читать дальше →
Всего голосов 27: ↑21 и ↓6 +15
Комментарии 2

Чем искать уязвимости веб-приложений: сравниваем восемь популярных сканеров

Время на прочтение 14 мин
Количество просмотров 93K
Сканеры веб-приложений — довольно популярная сегодня категория софта. Есть платные сканеры, есть бесплатные. У каждого из них свой набор параметров и уязвимостей, возможных для обнаружения. Некоторые ограничиваются только теми, что публикуются в OWASP Top Ten (Open Web Application Security Project), некоторые идут в своем black-box тестировании гораздо дальше.



В этом посте мы собрали восемь популярных сканеров, рассмотрели их подробнее и попробовали в деле. В качестве тренировочных мишеней выбрали независимые точки на двух платформах (.NET и php): premium.pgabank.com и php.testsparker.com.
Читать дальше →
Всего голосов 37: ↑37 и ↓0 +37
Комментарии 11

Создание прокси-dll для проверок эксплуатации dll hijack

Время на прочтение 7 мин
Количество просмотров 9.5K
Когда я исследую безопасность ПО, то одним из пунктов проверки является работа с динамическими библиотеками. Атаки типа DLL hijack («подмена dll» или «перехват dll») встречаются очень редко. Скорее всего, это связано с тем, что и разработчики Windows добавляют механизмы безопасности для предотвращения атак, и разработчики софта аккуратнее относятся к безопасности. Но тем интереснее ситуации, когда целевое ПО уязвимо.

Если описать атаку коротко, то DLL hijack — это создание ситуации, в которой некоторый исполняемый файл пытается загрузить dll, но атакующий вмешивается в этот процесс, и вместо ожидаемой библиотеки происходит работа со специально подготовленной dll с полезной нагрузкой от атакующего. В результате код из dll будет исполнен с правами запускаемого приложения, поэтому в качестве цели обычно выбираются приложения с более высокими правами.

Чтобы загрузка библиотеки прошла корректно, необходимо выполнить ряд условий: битность исполняемого файла и библиотеки должна совпадать и, если библиотека загружается при старте приложения, то dll должна экспортировать все те функции, которые это приложение ожидает импортировать. Часто одного импорта мало — очень желательно, чтобы приложение продолжило свою работу после загрузки dll. Для этого необходимо, чтобы у подготовленной библиотеки функции работали так же, как и у оригинальной. Реализовать это проще всего, просто передавая вызовы функций из одной библиотеки в другую. Вот именно такие dll называют прокси-dll.



Под катом будет несколько вариантов создания таких библиотек — как в виде кода, так и утилитами.
Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Комментарии 21

Как понять, что ты действительно бросил курить

Время на прочтение 13 мин
Количество просмотров 192K

Осторожно, лонгрид. TL;DR. Много курил, давно бросил. Есть интересное наблюдение на тему вредных привычек. Не встречал его в других источниках. У части людей, бросивших курить, годами сохраняется зависимость, несмотря на то, что они не употребляют сигареты. Привычка продолжает косвенно влиять на жизнь. Это можно исправить. Ниже опишу некоторые признаки проблемы и постараюсь ее декомпозировать. Ничего не продаю. Это личный опыт, из которого выжата кое-какая теоретическая база. Может пригодиться, если вы бросили курить, но боитесь рецидивов. Или разделяете один из характерных стереотипов, например: «бывших курильщиков не бывает», «это болезнь на всю жизнь...», «курение — страшное зло». Мне кажется, принцип актуален и для других зависимостей от доступных эндорфинов: тяги к сладкому, обжорства, алкоголизма на обратимых стадиях, игромании и др.
Читать дальше →
Всего голосов 108: ↑106 и ↓2 +104
Комментарии 151

Художественные детские книги про социнжиниринг

Время на прочтение 3 мин
Количество просмотров 32K


Привет! Я три года назад читал в детском лагере лекцию про социнжиниринг, троллил детей и немного бесил вожатых. В итоге испытуемые спросили, что почитать. Мой дежурный ответ про две книги Митника и две книги Чалдини, вроде, убедителен, но только для примерно восьмиклассника и старше. Если младше — то надо сильно чесать голову.

В общем, ниже — очень короткий список самых обычных художественных произведений. Лёгких, простых, детских. Но про социальную инженерию. Потому что в каждой культуре есть персонаж-джокер, который немного психопат, немного шут и немного эффективный специалист. Список неполный, и я хочу попросить вас его продолжить.
Читать дальше →
Всего голосов 83: ↑82 и ↓1 +81
Комментарии 140

10 лучших техник веб-хакинга 2018

Время на прочтение 3 мин
Количество просмотров 24K
image

Каждый год сообщество экспертов по веб-безопасности выбирает TOP-10 техник атак на веб-приложения. Организатором конкурса выступает компания Portswigger, разрабатывающая один из лучших инструментов для тестирования на проникновение веб-приложений — Burp Suite.

Под катом вас ждет 10 лучших инновационных техник атак на веб-приложения, отобранных со всего мира.
Всего голосов 37: ↑34 и ↓3 +31
Комментарии 5
1

Информация

В рейтинге
2 355-й
Зарегистрирован
Активность