あるAnonymous Coward 曰く、コマンドラインからHTTPやFTPなどでファイルをダウンロードするツールwgetに脆弱性が発見された。すでにパッチが公開されている(eWeek、JPCERT、マイナビ、Slashdot)。問題となる脆弱性は、FTPで再帰的にファイルをダウンロードする際、サーバから取得するディレクトリ一覧のなかに細工されたシンボリックリンクが仕込まれていると、wgetがローカルファイルシステム側の任意のファイルを作成したり上書きしたりする可能性があるというもの。これにより、wgetを実行しているユーザーの権限で任意のファイルが作成されたり、上書きされる可能性があるという。
攻撃の手法 (スコア:3, 参考になる)
https://community.rapid7.com/community/metasploit/blog/2014/10/28/r7-2... [rapid7.com]
の説明を読むと、前提としては、
・攻撃者が(細工された)FTPサーバーを立てられること。
で、攻撃するには、接続してきた wget の LISTコマンドに対し、以下のようなのを返す。
lrwxrwxrwx 1 root root 33 Oct 28 2014 TARGET -> /
drwxrwxr-x 15 root root 4096 Oct 28 2014 TARGET
wget でファイルを再帰的に取得しようとすると、
1. 1つめのエントリにより、TARGET -> / なリンクを作る。
2. 2つめのエントリにより、サーバーの TARGET/ 以下のファイルを、ローカルの TARGET/ 以下にコピーする。
TARGET は / へのリンクなので、サーバーで TARGET/etc/rc.local とか作っておけば、ローカルで /etc/rc.local に保存される。
という感じのようです。
Re:攻撃の手法 (スコア:1)
昔、書庫を展開すると意図せずファイルが上書きされるというディレクトリトラバーサルの脆弱性が話題になりましたが、新たな攻撃テクニックになったりするのでしょうか?
要は、書庫解凍でTARGET -> /へのシンボリックリンク作成>TARGET/ 以下へ展開という流れ。
展開先がシンボリックリンクだったら展開しないって実装は運用面での影響デカすぎて出来ない気がするし、対処は難しそう。
Re: (スコア:0)
そういう古典的なシンボリックリンク攻撃はさすがに対策されていると思うが。
Windowsはいまさらすべてのアプリにさかのぼって対処とか不可能なのでシンボリックリンクの作成には管理者権限が必要になった。
Re: (スコア:0)
wget の脆弱性より /etc/rc.local に書き込み可能な権限で wget 動かしてるシステム管理者のほうがこえぇ
Re: (スコア:0)
rootでファイルコピー的な作業をするのって、ファイルの所有者情報も含めてコピーをしたい場合ではないですかね。
軽く試したのですが、rootでwget -m ftp:// [ftp]〜 してもファイル所有者はrootでしたので、それはないのか。
この場合攻撃者は (スコア:1)
まず対象のサーバーに入ってシンボリックリンクを張っておいてから、外部からwgetを仕掛けるってことかな。
だとしたらサーバーに入れる時点で好きなことができると思うけどそうでもないのか。
あるいは、自分では入れないけど何らかの手段でシンボリックリンクを作らせるように「誘導」するか。
そこに細工されたシンボリックリンクが既に存在していることを知っているような状況か。
もしや「偶然」そんなシンボリックリンクが存在している環境があるのか。
/.J諸兄ならどうするんでしょうか。ってやったらダメだけど。
賢いクラッカーはもっとスマートにあれこれやるんだろうなぁ。
#わたしゃとてもゆうちゃんの足元にも及びそうもないし・・・
Re:この場合攻撃者は (スコア:1)
逆でしょ。
・攻撃者はFTPサーバーを運営する。
・被害者はそこからwgetでファイルをダウンロードする。(ように、なんかウェブサイトで指示しておく。「ミラーだよ」とか。)
ときに、wgetがこっちのシンボリックリンクに対してgetをかけてきたら、シンボリックリンクに変なコマンドを仕込んでおいて、被害者側のマシンにファイルを作ることができるってこと。ユーザー権限の設定ファイルを書き換えることもできる、ってこと。bashやXの設定ファイルにキーロガーとかできるんじゃないかな。
Re: (スコア:0)
攻撃対象はローカル(wgetを実行している端末)なので。
たとえば攻撃者がFTPサーバーを用意して、偽の解説ページなどを利用してwgetでアクセスするよう誘導すると、
ローカルにマルウェアを仕込むことが可能になります。
Re: (スコア:0)
お間抜けなftpやhttp管理者が、公開向けディレクトリに/etc/passwordへのシンボリックリンクをうっかり入れちゃっていたような場合に、
再帰的ダウンロードをしたいDLユーザのwget実行時に、wgetが「誠実なあまり」DLユーザのPCの/etc/passwordへのシンボリックリンクとして解釈して
DLユーザのPCの/etc/passwordを上書きしちゃう!
って困った挙動だ、というわけで、攻撃の手段がどうこうというのは違うのでは。
#ていうか、root権限を持たないで実行すればまあ大体の(システムに影響するような)問題は発生しないんで、
#(windowsや一部のLinuxみたいに)常時root権限で、rootのままwgetするなんて
#wgetが作られたころは想定外だったのではないか。
と、タレこみ文とリンク先を見ただけの印象なので嘘かもしれません。
↓たぶんエロい人が正解を書いてくれる。
Re:この場合攻撃者は (スコア:1)
/etc/passwd じゃなければよさげ。
もしそこでシンボリックリンク貼ったとしてpasswd自体のパーミッションは効かないのかな。
Re: (スコア:0)
別にrootでなくても ~/.ssh/authorized_keys とか狙えばいいんでは。
Re: (スコア:0)
~/.bashrcを上書きされて任意のプログラム動かされたり、データ送信されるだけでも嫌すぎる感じ。
Re: (スコア:0)
#ていうか、root権限を持たないで実行すればまあ大体の(システムに影響するような)問題は発生しないんで、
んなわけねー。
じゃあユーザーがrootを取れないAndroidやiPhoneは一切セキュリティの心配がいらないってか?
#(windowsや一部のLinuxみたいに)常時root権限で、rootのままwgetするなんて
UACが導入されたの何年前だよ…。エンジニアがそんな不勉強で大丈夫か?
Re: (スコア:0)
>#(windowsや一部のLinuxみたいに)
2014(XPサポート切れ)問題ここに現れるかぁ〜
・・・たぶんそのエンジニアは、もうサポート切れなんじゃないか?
Re: (スコア:0)
UACなんてどうせ「はい」か「続行」しか選択しないでしょ
Re: (スコア:0)
あなたがバカだからといって他人までそうとは限らない
Re: (スコア:0)
こういう人はどうせ「自分は知識があるから」って常にrootなんだろうな
Re: (スコア:0)
root不要なファイル参照にroot使ってたり、DBでフル権限ユーザしか定義がない大規模システムがあちこちにある現実があります。
UAC自体をバグだと語ってる場所もあります。
もう、通常ログオン不可(回避不可)にする時期が来てるのかも。。なんだかなぁ。。。
沈黙を選んでいてくれれば (スコア:0)
お手軽な攻勢防壁組めたのに
# 罪状は何になるのかな
だからロゴは? (スコア:0)
--
Windows 版の最新どこかにある? (スコア:0)
http://gnuwin32.sourceforge.net/packages/wget.htm [sourceforge.net]
は全然更新されていないのですが、Win用の信頼できそうなpackageはどこかにありますか?
Re: (スコア:0)
Chocolateyのリポジトリにあるのも1.11.4.1で最終更新は2年前。古っ
Re: (スコア:0)
権限低いユーザ使えばとりあえずオッケでは?
Re: (スコア:0)
ここまで古いとほかに脆弱性なかったっけ? ってのが気になる。
Re: (スコア:0)
とりあえず「windows wget」でググって6番目 https://eternallybored.org/misc/wget/ [eternallybored.org]
信頼性は……とりあえずこんな感じ
https://www.virustotal.com/en/file/c1288c0a96d87232fccd244f58b3a14acb9... [virustotal.com]
http://www.aguse.jp/?url=https%3A%2F [aguse.jp]