?!!!!!
Vulsではスキャン対象のサーバに並列にSSH接続してコマンドを発行してやすんすが、SSH multiplexingを有効化したことにより、TCPコネクションが再利用され高速、省エネ化されたでやんすよ〰#vulsjp https://t.co/vm0VjruqBv
— vuls (@vuls_ja) March 13, 2018
そういうことでVulsはサーバに優しくなったんでやんすよ。
とのことで早速アップデートしてみました!!
直でVulsインストールされて運営している側には特に異常ありませんでした。
が!!
Vuls dockerの方をアップデートすると、
configtestができない!!!Why!!?
■Error
err: [Failed to detect OS: Unable to connect via SSH. Check SSH settings. If you have never SSH to the host to be scanned, SSH to the host before scanning in order to add the HostKey.
HostKeyを登録しろ!と怒られる。ググるとこんな記事を発見しました。
■VulsをDockerで構築したけどHostKeyを登録しろと永遠言われる問題
https://qiita.com/S-T/items/33d2a9d67fd8ccb40879
うーむ。。さすがにDocker bridgeのセグメントを変えるのはちょっと。。。
というか去年のバージョンからscanできなかった系!?
さすがにやばめちゃんなのでVulsのちょんまげさんに報告してみました。
■vuls-slack
とりあえず不明なのでscan時にssh -vvvできるようにマージして
パス(controlpath)が問題とちょんまげさん予想。
そこで-vvvを付けてスキャンすると!
(ここからはちょんまげさんと激しくダイレクトでやりとりします)
■Research
unix_listener: cannot bind to path: /root/.ssh/controlmaster-adachin-xxx.xx.xxx.xxx.22.HaaaaaHAHAHA
やはりパス(controlpath)が怪しい。権限なんじゃないかと疑い、
一旦以下のようにvuls scanコマンドを変えてみると。。scanできた!
1 2 3 4 5 6 7 8 9 10 11 |
# docker run --rm \ > -v ~/.ssh:/root/.ssh:rw \ > -v $PWD:/vuls \ > -v $PWD/vuls-log:/var/log/vuls \ > -v /etc/localtime:/etc/localtime:ro \ > -e "TZ=Asia/Tokyo" \ > vuls/vuls scan \ > -config=./config.toml time="Mar 14 14:02:05" level=info msg="Start scanning" time="Mar 14 14:02:05" level=info msg="config: ./config.toml" time="Mar 14 14:02:05" level=info msg="Validating config..." |
動きとしてはsshの多重接続機能のコントロールファイルをhost:$HOME/.ssh/以下に作ろうとして、
初めはro(readonly)だったのでホスト側にファイルが作れないのでエラーが出てしまう。
今回はro->rw(readwrite)に変更したのでホスト側にファイル作れたのでエラーが出ないとのこと。
じゃあReadme直しときますね〜となりました。
が!!!
よくよく考えてみたのです。
・Docker volumes | ‘:rw’と’:ro’ってどういう意味?正体はなに?
https://hackerslog.net/post/softwares/docker/the-difference-of-ro-and-rw/
上記のはあまり関係ありませんが、controlpathで指定したファイルを/tmpに置くと他のユーザが
認証なしでアクセスできてしまうという恐れが….これではVuls自体に脆弱性が出て笑えないと気づいたので!
実行ユーザーのホームディレクトリ$HOME/.vuls(700)を作成し、ファイル(600)を作る作戦にしました。
■fix: change ControlPath to .vuls of SSH option #618
https://github.com/future-architect/vuls/pull/618
これで権限等変わらず、configtestもscanもできました!
■まとめ
速いうちに原因わかってよかった。。。
デバッカー頑張りますw
0件のコメント