Kioptrix: Level 1.2解く
Kioptrix: Level 1.2解く
いくつか解いてきたので流れが変わらないところは省略する。
Kioptrix: Level 1.2
IPアドレスを探す。
今回のマシンは名前解決させるためにhosts
を書き換えないといけないっぽいので書いてやる
$ echo "192.168.56.105 kioptrix3.com" >> /etc/hosts
これでドメインを叩いて対象マシンにアクセスできる。
ポートスキャン
22
と80
なのでsshとwebアプリっぽい
sshは適当なパスワード試してだめだったので後回し、webアプリの方を見てみる
いろいろ画面を遷移させてみると、php
の拡張子が見えたのでphpで動いていると予想。
ディレクトリを総当たりで検索してみる
出てきたpathの中で興味深いものだけピックアップする
path(host省略) | status |
---|---|
/gallery | 301 |
/core | 301 |
/phpmyadmin | 200 |
各pathをブラウザで開いてみると/core
は空白のページが開いただけだが、他2つは意味のありそうなページになった。
- /gallery
この/gallery
の方のpathだが、並び順を変更することができるようになっており、その時のURLは以下のようになっている。
(host省略)
/gallerry/gallerry.php?id=1&sort=photoid#photos
GETで渡すパラメータのうち、id
は値をデータベースの検索に使用していそうなので脆弱性がないか調べる
クエリを発行している文字列は"
もしくは'
で囲っていると予想。
idに渡してみるとsyntax errorが返される。
DBがMySQLだとわかった。
勉強のためにもう少し手動で探索してみる。
最近下記のサイトで復習したので余裕でした😤
- レスポンスで返されるパラメータの数を確認
d=1 order by 6--
- table一覧
id=1 union select 1, table_name, null, null, null, null where information_schema.tables--
出てきたテーブルの中から重要そうな情報を含んでいるテーブルを探す
私はuser
とかaccount
とかで検索している
最初からあるテーブルを除くとuser
,gallarific_user
,dev_accounts
の3つが見つかるので順番に見てけば良さそうだ
sqlmap
で調べるとdev_accounts
でユーザ名とパスワードが表示された。
パスワードはmd5でhash化されていが、sqlmapが勝手に複合してくれた。便利だ
このユーザとパスワードはdevelopperのものっぽいのでsshかphpmyadminでログインできると予想。
ログインできた。
しかし、特にできることがなさそうなのでもう一方のアカウントでもログインしてみる。
何かある。
CompanyPolicy.README
を見るとPlease use the command 'sudo ht'
と書いてあるのでやってみると以下のようなエラーが出る。
Error opening terminal: xterm-256-color
ググってxterm
を使用するように設定
$ export TERM=xterm
再びsudo ht
を叩くとなんか出た。
ht
ってのはテキストエディタらしいですね〜
これで何かの設定を書き換えれば良さそうだということがわかります。
権限を昇格するのに使用できる(細かくいうと違うかもしれないけど)コマンドで思い浮かぶものにsudo
がある。
sudo
コマンドについて調べると設定ファイルというものがあり、sudoers
というものがある。
ここの権限設定を書き換えてやる
Macに慣れていないため、ファンクションキーの場所がわからず少し詰まってしまいました^^;
これでsudo su
を叩いてやると
rootをとることができる
感想
テキストエディタにroot権限を渡してはいけない