Соб­рал для тебя све­жие про­екты: от мегабыс­тро­го ска­нера веб‑при­ложе­ний до ана­лиза­тора бинар­ников и защиты от слопс­квот­тинга. Залетай и смот­ри, что при­годит­ся в тво­их иссле­дова­ниях!
 

DursGo

Это написан­ный на Go ска­нер безопас­ности веб‑при­ложе­ний. Ищет XSS (вклю­чая DOM-based XSS), SQL-инъ­екции, command injection, SSRF и дру­гие популяр­ные уяз­вимос­ти. Находит сле­пые уяз­вимос­ти, при которых сер­вер не отве­чает сра­зу. Доволь­но лег­ковес­ный, занима­ет мало мес­та на дис­ке, и с ним удоб­но работать. Очень быс­трый, эффектив­но исполь­зует ресур­сы. Активно раз­вива­ется: нап­ример, раз­рабы недав­но добави­ли воз­можность ска­ниро­вать под­домены.

Ус­танов­ка:

git clone https://github.com/roomkangali/dursgo.git
cd dursgo
go build -o dursgo ./cmd/dursgo

Что­бы запус­кать его как натив­ное при­ложе­ние, ско­пируй бинарь в /usr/local/bin:

sudo cp dursgo /usr/local/bin/

Для тес­тов у DursGo есть собс­твен­ное уяз­вимое веб‑при­ложе­ние. Точ­нее, целый набор при­ложе­ний. Уста­нов­ка и запуск лабы:

git clone https://github.com/roomkangali/LabVulnerDursGo.git
cd LabVulnerDursGo/index-vuln
docker compose up --build -d

От­крой в бра­узе­ре http://localhost:8088/ — там уви­дишь задания для тес­тов. Нат­рави про­гу, нап­ример, на blind SSRF:

dursgo -u http://localhost:8088/blind/ -s blindssrf --oast

В локал­ке тул­за работа­ет с зап­редель­ной ско­ростью. Но и в реаль­ных усло­виях не тор­мозит. Да, появ­ляют­ся тайм‑ауты при зап­росах к сер­веру и отве­тах от него, лаги сети и про­чие мелочи. Но в целом ско­рость кос­мичес­кая.

Пример сканирования DursGo
При­мер ска­ниро­вания DursGo

Од­на из фишек про­ги — под­дер­жка ИИ для ана­лиза уяз­вимос­тей. Не поиск, а имен­но ана­лиз и опи­сание най­ден­ного. Нель­зя ска­зать, что это какая‑то неверо­ятная фича для опыт­ного пен­тесте­ра. Опыт­ный и так зна­ет, что это за уяз­вимость и как с ней работать. Но для нович­ка или рядово­го прог­раммис­та инс­тру­мент край­не полез­ный: ней­росеть даст под­робное объ­ясне­ние, которое DursGo офор­мит в удоб­ный отчет.

Промпт к ней­росети стро­ится по шаб­лону. Най­ти его мож­но по пути /internal/ai/client.go, стро­ка 79:

prompt := fmt.Sprintf(`
You are a professional penetration tester providing a summary for a developer.
Analyze the following security vulnerability and respond with a concise, actionable summary formatted in Markdown.
Use the following structure:
**Root Cause:** [Your analysis of the root cause]
**Recommendation:** [Your specific, actionable recommendation]
**Code Example (if relevant):**
`+"```"+`[language]
[Your code example for the fix]
`+"```"+`
Instructions for the Code Example:
- Infer the programming language from the context (e.g., URL extension).
- Replace '[language]' with the correct Markdown language specifier (e.g., php, python, javascript).
Vulnerability Details:
- Type: %s
- URL: %s
- Parameter: %s
- Payload: %s
- Details: %s
- Severity: %s
`,
vuln.VulnerabilityType,
vuln.URL,
vuln.Parameter,
vuln.Payload,
vuln.Details,
vuln.Severity,
)

Ути­лита под­держи­вает толь­ко две ней­росети: Grok и Gemini. Что­бы пос­мотреть при­мер отче­та, необя­затель­но покупать ключ API. Возь­ми промпт, под­ставь свои зна­чения и отправь ней­росет­ке нап­рямую. Резуль­тат будет таким же. Либо пос­мотри при­меры отче­тов в пап­ке reports. Для прос­мотра открой URL http://localhost:8080/report/. Там будет такая стро­ка:

# DursGo Vulnerability Report Viewer

Вы­бери любой файл с при­мером отче­та.

Пример ИИ-отчета
При­мер ИИ‑отче­та

Тул­за хорошо под­ходит для пер­вичных про­верок. Иног­да находит то, что про­пус­кают более тяжелые ска­неры.

 

GraphQL Cop

Лег­кая ути­лита на Python для пен­теста API GraphQL. По сути, это ска­нер, который про­веря­ет API на рас­простра­нен­ные уяз­вимос­ти. На выходе получишь готовую коман­ду curl для ата­ки. Если не ука­жешь путь к эндпо­инту, ути­лита перебе­рет сло­варь стан­дар­тных вари­антов (нап­ример, /graphql, /graphiql) и най­дет точ­ку для тес­тирова­ния. Отдель­ный плюс для раз­работ­чиков — воз­можность встро­ить ее в CI/CD.

Продолжение доступно только участникам

Материалы из последних выпусков становятся доступны по отдельности только через два месяца после публикации. Чтобы продолжить чтение, необходимо стать участником сообщества «Xakep.ru».

Присоединяйся к сообществу «Xakep.ru»!

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии