サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
今年の「#文学」
masatokinugawa.l0.cm
English version is here: https://mksben.l0.cm/2021/11/css-exfiltration-svg-font.html この記事では、SVGフォントとCSSを使って、ページ内のテキストを読み取る方法を紹介します。 CSSを使ってデータを読み取る方法はいくつか知られており、既知の手法が以下のサイトでよくまとめられています。 CSS Injection Primitives :: DoomsDay Vault https://x-c3ll.github.io/posts/CSS-Injection-Primitives/ これらのテクニックは、入力がサニタイズされていて使えるHTMLタグが限られているケースや、Content Security Policy(CSP)の制限によってJavaScriptが使えない状況などでも、スタイルの記述ができる
数か月前、ゲームのコミュニティなどで人気のチャットアプリ「Discord」のデスクトップ用アプリケーションに任意のコードを実行可能な問題を発見し、Bug Bounty Programを通じて報告しました。発見したRCEは、複数のバグを組み合わせることによって達成される面白いものだったので、この記事では、その詳細を共有したいと思います。なお、現在脆弱性は修正されています。 調査のきっかけElectronアプリの脆弱性を探したい気分だったので、Electronアプリで報奨金が出るアプリを探していたところ、Discordが候補にあがりました。Discordは自分自身が利用者で、自分が使うアプリが安全かどうかをチェックしたいという思いもあったので、調査をすることにしました。 発見した脆弱性私は主に次の3つのバグを組み合わせることでRCEを達成しました。 contextIsolationオプションの
English version is here: https://mksben.l0.cm/2020/05/jquery3.5.0-xss.html 先月、jQuery 3.5.0がリリースされました。 このバージョンでは、僕が報告した問題がSecurity Fixとして含まれています。 jQuery 3.5.0 Released! | Official jQuery Blog https://blog.jquery.com/2020/04/10/jquery-3-5-0-released/ 報告したバグは、CVE-2020-11022、 CVE-2020-11023 として採番されています。 https://github.com/advisories/GHSA-gxr4-xjj5-5px2 https://github.com/advisories/GHSA-jpcq-cgw6-v4j6
English version is here: https://mksben.l0.cm/2018/05/cve-2018-5175-firefox-csp-strict-dynamic-bypass.html Firefox 60で修正されたContent Security Policy(CSP)のstrict-dynamicをバイパスできた脆弱性について書きます。 https://www.mozilla.org/en-US/security/advisories/mfsa2018-11/#CVE-2018-5175 A mechanism to bypass Content Security Policy (CSP) protections on sites that have a script-src policy of 'strict-dynamic'. If a target
お久しぶりです&あけましておめでとうございます。昨年はブログを書く時間をうまく作ることができず、あまり記事を書けませんでした。今年はできるだけ月に1回程度何か書いていきたいと思っています。今年もよろしくお願いします! さて、ブログを書かなかった間にXSSからSQLインジェクションへ興味が移った、なんてことはありませんでしたので、今日もいつも通り大好きなXSSの話をしたいと思います! 最近、正規表現にユーザ入力を使っていることに起因するDOM based XSSに連続して遭遇しました。あまり見慣れていない注意が必要な問題だと思うので、この記事では、見つけたもの2つがどのように生じたか、また、問題を起こさないためにどうすればよいかを紹介します。 そのうちの1つはLINEのBug Bounty Programを通じて報告した問題です。 賞金と、"LINE SECURITY BUG BOUNTY"
前回の記事、間違えて14回目と書きましたが、13回目でした。 飛ばしてしまった13回目を今からここに書いて埋めることにします! 今日はIEの知られざるHTMLタグについて紹介しようと思います。このタグを利用すると、限られた条件でフィルターのバイパスにも利用できます。 今回利用するのは、<?PXML>というタグです。 皆さん、<?PXML>タグをご存知ですか?僕はよく知りません! このタグの意味は全く分からなくて、いくら調べても全く出てこないほどで、誰か一体何なのか知っている人がいたら教えてほしいくらいですが、とりあえずここに自分が知っている限りのことを書いていきます。 まず、自分はこのタグを印刷プレビューの脆弱性を探している時に発見しました。様々なページを印刷プレビューして、攻撃可能なプレビュー結果が出ないかみていたときのことです。XMLのパースエラーを表示するページを印刷プレビューしたと
前回、XSSAuditorのバイパスのチートシートを作ったという記事を書きましたが、さきほど、IE/EdgeのXSSフィルターのバイパスも公開しました。 https://github.com/masatokinugawa/filterbypass/wiki/Browser's-XSS-Filter-Bypass-Cheat-Sheet#ieedge%E3%81%AExss%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF%E3%83%BC この公開に合わせて、今日は強力なIE/EdgeのXSSフィルターのバイパスを1つ紹介しようと思います。 このバイパスはPOST経由以外の全てのReflected XSSで使えます。1年以上前に以下のようなツイートをしましたが、今から紹介するのがこのとき発見したベクターです。 I found pretty useful IE XSS
ブラウザのXSSフィルターのバイパスをまとめたページを作りました。 こちらです: https://github.com/masatokinugawa/filterbypass/wiki/Browser's-XSS-Filter-Bypass-Cheat-Sheet 現在のところ、Chrome/Safariのバイパスのみ掲載しています。そのうち、IE/Edgeも掲載するつもりです。 このページを作った理由は、Shibuya.XSS techtalk #9 というセキュリティの勉強会の時に、Firefoxのバグを発見しまくっていることで有名な西村さんが、「XSSフィルター、バイパスが発見されても、気付いたらいつの間にか使えなくなっていたりする。使えるものをまとめたXSSフィルターのバイパスのチートシートみたいなのがあったら便利」というようなことを言っていて、じゃあ僕が4月中に作りますと宣言して
脆弱性"&'<<>\ Advent Calendar 2016 の5日目の記事です! 今朝、ブラウザで動作を試しながらECMA-262の仕様を読んでいたところ、IEの奇妙な動作を発見し、それがXSSフィルターのバイパスに使えることがわかりました。 完全なバイパスではありませんが、興味深いものなので共有します。 XSSフィルターは、単純な反射型のXSSに加えて、文字列リテラル中で起こるXSSも防止しようとします。自分の過去の資料で、文字列リテラルの文脈で遮断される文字列の一部を紹介していますので、以下に貼り付けます。 SecurityCamp2015「バグハンティング入門」 from Masato Kinugawa 今回注目したいのがこの中のvalueOf=です。この資料をまとめたとき、valueOf=をなぜ遮断する必要があるのかよくわかりませんでした。 確かに、あらかじめ定義された関数であ
English version is here: http://mksben.l0.cm/2016/10/xss-via-referrer.html 今日はXSSのテクニックを紹介する簡単なポストです! Windows 10のAnniversary UpdateからIE/Edgeの細かい動作が変わっているようです。 XSSと関係の深い動作もいくつか変更されています。その中の1つに、リファラ文字列に含まれる一部の文字が常にエンコードされるようになった動作があります。以下に具体的に示します。 次のような、リファラ文字列を書き出すページがあるとします。 https://vulnerabledoma.in/xss_referrer 以前までのIE/Edgeでは、過去のブログでも取り上げたように、次のようにスクリプト文字列を含んだURLからのリファラを送信することで、XSSが可能でした。 https
English version is here: http://mksben.l0.cm/2016/09/safari-uxss-showModalDialog.html Safari 10で修正された、showModalDialog() に存在したUXSSバグについて書きます。 https://support.apple.com/en-us/HT207157 WebKit Available for: OS X Yosemite v10.10.5, OS X El Capitan v10.11.6, and macOS Sierra 10.12 Impact: Visiting a maliciously crafted website may leak sensitive data Description: A permissions issue existed in the hand
English version: http://mksben.l0.cm/2016/07/xxn-caret.html ------------------------------------------------------- 以前、CODE BLUEでXSSフィルターを利用したXSSの問題について発表しましたが、同様の問題が6月のパッチでCVE-2016-3212として修正されました。この記事では詳細を紹介します。 以前公開した資料にも書いたように、以前までは、XSSフィルターの遮断規則を攻撃とは無関係の文脈に適用させ、.を#に置換させることで、<script>のsrc値や<link>のhref値を変更することによる攻撃が可能でした。 2015年12月、Microsoftはこの問題に対応するために、この遮断規則のみ、#の代わりに^に置換するよう動作を変更しました。これにより確かに、上
English version: http://mksben.l0.cm/2016/05/xssauditor-bypass-flash-basetag.html ------------------------------------- このブログではおなじみ、ブラウザのXSS保護機能をバイパスするコーナーです。 今回はIEではなく、ChromeのXSS Auditorをバイパスします。 数日前、Marioさんが自身の発見したAuditorのバイパスが修正されたことに気付いて、新たなバイパスを探していたので、一緒になって探していたらみつけました。 Marioさんが新たにみつけたのはこちらです。 XSS Auditor Bypasses 05.2016https://t.co/c9UcjpDZZM (someone asked for PoC and test-case, here you
2月頃、リッチテキストエディタの TinyMCE のXSS脆弱性を報告しました。 特にセキュリティの修正をしたといったアナウンスはありませんが、数日前に公開された4.3.9でこの問題が修正されています。Twitterのプロフィールにも、「World's #1 most popular open source #WYSIWYG editor」 とあるくらい、世界的にも非常によく使われているリッチテキストエディタのようですので、更新を促すためにこの記事を書きます。 XSS脆弱性は 4.3.8 以下のバージョンにあります。 僕の知る限りでは、TinyMCEのPreview Plugin機能を使っていなければ影響を受けません。 この機能を呼び出さないようにするか、4.3.9以上に更新してください。 これ以下は、技術的な説明になります。この脆弱性の発生原因は、技術的にも少し面白いです。 発火する場所
徳丸さんがブログで紹介されたことで、<input type=hidden>でのXSSが話題になっていますね! hiddenなinput要素のXSSでJavaScript実行 | 徳丸浩の日記 http://blog.tokumaru.org/2016/04/hiddeninputxssjavascript.html 僕もちょうど、個人での検証の過程で発見した、hiddenでのXSS手法について、そろそろ共有しようと思っていたところでした。皆の関心が高いうちに、もう1つの方法を共有したいと思います! 徳丸さんのコードに倣って紹介します。今回は問題を簡単にするためにX-XSS-Protection:0をつけさせてもらいます。 <?php header('X-XSS-Protection:0'); header('Content-Type:text/html;charset=utf-8'); ?
Update: English version is here: http://mksben.l0.cm/2016/04/easyxdm-xss-docmode-inheritance.html ------------------ EasyXDM というクロスドメインでのあれこれを便利にしてくれるライブラリの 2.4.20 で、自分の報告したXSS脆弱性が修正されています。使っている人はアップデートしましょう。 Release Security update - 2.4.20 · oyvindkinsey/easyXDM · GitHub https://github.com/oyvindkinsey/easyXDM/releases/tag/2.4.20 以前にも脆弱性が指摘されていますが、それとは別の問題です。 http://blog.kotowicz.net/2013/09/exp
2015年6月頃にみつけた、toolbar.google.com の、少し変わったXSSを2つ紹介します。 The English version is here: http://mksben.l0.cm/2016/01/google-toolbar-xss.html 何が変わっているか このXSSは、Google ToolbarがインストールされているIEでしか動作しません。Google Toolbarがインストールされていると、toolbar.google.com 上に用意されたUIから、ツールバーを操作するコマンドを実行できるようになります。このコマンドを利用することでXSSに繋げるという点が、よくあるものとは異なります。 どのようにコマンドを実行しているか toolbar.google.com 上の次のページをみると、こんなコードを発見できます。 http://toolbar.go
English version: http://mksben.l0.cm/2015/12/xxn.html ------------------------------------------------ 2015年12月のMicrosoftの月例アップデートで修正された、Internet ExplorerとEdgeのXSSフィルターに存在した問題(CVE-2015-6144 および CVE-2015-6176)について書きます。 2015 年 12 月のマイクロソフト セキュリティ情報の概要 https://technet.microsoft.com/ja-jp/library/security/ms15-dec.aspx 修正された問題は、2015年10月に行われたセキュリティカンファレンスのCODE BLUEで詳細を伏せて発表した、IE/EdgeのXSSフィルターの動作を利用してXS
English version: http://mksben.l0.cm/2015/11/avtokyo2015.html ---------------------------------------------------- 2015年11月14日に行われたセキュリティカンファレンス、AVTOKYO2015で発表しました。 ご存知の方もいらっしゃるかと思いますが、2013年9月、脆弱性の検査がきかっけで、ISPに自宅のインターネットを止められるということがありました。発表では、このときの詳細をお話しました。資料は以下にあります。 バグハンターの哀しみ from Masato Kinugawa 聴いて頂いた皆様、ありがとうございました。発表後、聴いて頂いた方の意見を伺い、誰がどうしていればこのような問題が起きずに済んだのかといったことを議論したりもでき、とても有意義な時間を過ごすことがで
English version: http://mksben.l0.cm/2015/10/css-based-attack-abusing-unicode-range.html ---------------------------------- CSSの @font-faceのunicode-range を使った攻撃手法を思いついたので共有します。 この手法を使うと、攻撃者はCSSだけでページ内に書かれたテキストを推測することができます。 この手法は、次のような場面で利用できるかもしれません。 ・ ブラウザのXSS保護機能のバイパス(ChromeのXSS Auditorは<style>の注入をブロックしない) ・ ターゲットのページで、JavaScriptの実行はできないがスタイルが注入できた場合の攻撃への利用 自分が知る限りでは、CSSを利用した今でも使える既知の攻撃手法には、属性値を
English version: http://mksben.l0.cm/2015/09/bypassing-xss-filter-hzgb2312.html -------------------------------------------------------- HZ-GB-2312という文字コードのエスケープシーケンスにあたるバイト、~[0x0A]と~{を使ってIEのXSSフィルターをバイパスできることに気付いたので紹介します。 この手法はページのContent-Typeレスポンスヘッダで文字コードが指定されていない時限定で使えます。 バイパス 1 以下にIEでアクセスしてAAAにマウスを移動し、XSSフィルターに遮断されずにアラートが出ることを確認してください。 http://vulnerabledoma.in/char_test?body=%3Cx~%0Aonmouseov
2015年8月11~15日の間行われたセキュリティ・キャンプ全国大会2015に、今年も講師として参加してきました。使用した資料を公開します。 1. 事前学習として用意した「簡単にSOP周辺を理解するページ」 http://vulnerabledoma.in/camp2015_sop/ 2. 講義に使用したスライド SecurityCamp2015「バグハンティング入門」 from Masato Kinugawa 3. 特別コーナーで使用したスライド CVE-2015-4483解説 from Masato Kinugawa 1つ目のスライドは、自分がキャンプの1日目に担当した「バグハンティング入門」という講義で使用したものです。講義では、脆弱性を探すときにどのような点に注目すればいいのかを過去に発見した/されたWeb周辺のバグを通して説明しました。 題材のアプリケーションには、サイボウズLi
English version: http://mksben.l0.cm/2015/07/codeblue.html -------------------------------------------------------- 2014年12月に開催された国際セキュリティ会議、CODE BLUEで、「バグハンターの愉しみ」というタイトルで発表させて頂きました。先日、公式ページでスライドが公開されましたので、僕のスライドをここでも共有します。 他のスピーカーの方々のすごいプレゼンは以下で見られます。 http://codeblue.jp/2015/archive/2014/ 講演の動画はポリシーにより公開していません。 会場の雰囲気はITmediaと@ITに書いて頂いた記事からお楽しみください。 Googleへの報告件数は世界2位:脆弱性発見のプロ「キヌガワ マサト」さんは日本人だった
Hi! Are you English-speaker? Good news! Finally, I started my blog in English: http://mksben.l0.cm/2015/06/bypassing-xss-filter-showmodaldialog.html I'm not good at English, but I think it is easier to read than Google translate. Maybe. Enjoy! ----------------------------------------------------------------------------- 先日、古くからあるJavaScriptの関数の1つの、showModalDialogの挙動について詳しくみていました。showModalDialogは、Ch
Flashを使った、ちょっと変わった情報奪取手法を紹介します。 この手法、以前から条件によっては攻撃が可能になる場合があるだろうと想像していたんですが、なかなか実例にぶつからず、2013年に開催されたサイボウズの脆弱性発見コンテスト「cybozu.com Security Challenge」で初めて本当に動作するものを発見しました。 実は既に「SECCON 2013 全国大会」でも一部詳細を発表しています。スライドの15ページの辺りから書いてある件です。 http://www.slideshare.net/masatokinugawa/cybozu-security-challenge/15 発表の時点ではサイボウズ側で修正されていなかったので、具体的な箇所を伏せていますが、今は修正されたので、具体的な箇所をあげながら説明したいと思います。 なお、この問題はFlash自体の脆弱性ではない
1つ前の記事でも書いたように、最近は電卓を起動したいと思いながら生きているんですが、その方面の本やWebの資料を読んでいると、高機能ディスアセンブラであるHex-RaysのIDA(https://www.hex-rays.com/index.shtml)を使った話がよくでてきます。IDAには無料版もあって(https://www.hex-rays.com/products/ida/support/download_freeware.shtml)、自分もこれを使っていたんですが、無料版ではできないことにぶつかることがしばしばあって、いい加減もどかしくなってきたので、正式版であるIDA Proを個人で購入しました。 Pro版は個人では購入できないという情報を見聞きしていましたが、このたび購入できたので、どういう手順を踏んだかを、今度のCTF for GIRLSで生まれるであろう電卓起動女子のた
実は昨年の夏、サイボウズラボユースという制度を利用させていただいて、3週間程度サイボウズラボのオフィスに出社していました。 サイボウズ・ラボ:人材募集:サイボウズ・ラボユース http://labs.cybozu.co.jp/recruit/youth.html 何をしていたかといいますと、@herumi さんや @takesako さんにご指導頂きながら、アセンブリ言語をずっと読んでいました。 XSSをはじめとするWebアプリケーションの脆弱性はそれなりに知っているつもりですが、バッファオーバーフローをはじめとするメモリ関連のバグは全然理解していませんでした。 これまでも、アプリケーションが偶然クラッシュするたび、そういった方面への関心がでてきて、アセンブリを読めば何かわかるのかなあと思って、読んではみるけど、無慈悲なバイナリの羅列に圧倒されるということを繰り返してきました。 ただ、アラ
12月と言えばXSS-Masの季節ということで、最近は、XSS-Mas前から1月の終わりまで開催されていた、賞金付きXSSチャレンジ「Cure53 XSS-Mas Challenge 2014」に挑戦していました。 XSSチャレンジというのは、出題者がわざとわかりにくい形でXSSに脆弱にしたページ(例:特定の記号や文字が使えない、文字数制限がある等)で、指定した条件(alert関数 で「1」の文字をだすとか)をクリアして、スクリプトが実行できることを証明するという、XSSを嗜む人たちの間で楽しまれる一種のパズルゲームです。 実際にXSSで攻撃可能なことを証明しないといけない場面でも、特定の制約がかかることは多く、こういったチャレンジは単なるパズル遊びというだけでなく、攻撃の発想を養ううえでとても有益なものです。
2014年も、Googleの脆弱性報酬制度を通じて脆弱性を報告していました。 Nexus 5、Nexus 10、Chromebook と毎年何かを頂いていましたが、2014年も上位の報告者だったとして、Googleからスマートウォッチの「Moto 360」を頂きました! 人生初、ウェアラブル端末です! 新しいものには疎くて、ウェアラブル端末の位置づけがわからないんだけど、通知の閲覧やちょっとした操作がスマホを出さずにできる高機能腕時計くらいに思えばいいんでしょうか。まだどう使うのが便利なのかあまり想像できていなくて、ちょっと触ったかんじでは、スマホでやってることの一部を腕でできる程度のものだと感じました。それってそんなに嬉しいことなんだろうか…。今の率直な思いは、「スマホを出せばいいじゃん」です…。 とりあえずは腕時計として使えれば十分便利なので、しばらく腕につけていよう。そのうち便利さに
次のページ
このページを最初にブックマークしてみませんか?
『Masato Kinugawa Security Blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く