1月 8

Exploit DatabaseがGithubにホストされたようです。

edb-github-blog
Exploit掲載サイトのExploit Database(EDB)はSVN,CVSを廃止してGithubにホストされるようになったようです。また、これに伴ってリポジトリの更新間隔を毎週から毎日に変更とのこと。
便利ですね。

以下はgitで取得してきたときのログです。

root@kali:/opt# git clone https://github.com/offensive-security/exploit-database
Cloning into ‘exploit-database’…
remote: Counting objects: 28645, done.
remote: Compressing objects: 100% (26550/26550), done.
remote: Total 28645 (delta 2051), reused 28624 (delta 2030)
Receiving objects: 100% (28645/28645), 32.73 MiB | 561 KiB/s, done.
Resolving deltas: 100% (2051/2051), done.
Checking out files: 100% (27619/27619), done.
root@kali:/opt# ls exploit-database/
README.md files.csv platforms
root@kali:/opt# ls exploit-database/platforms/
aix bsd_ppc freebsd_x86 irix linux multiple osx sco tru64 win64
arm bsd_x86 freebsd_x86-64 java linux_mips netbsd_x86 osx_ppc sco_x86 ultrix windows
asp bsdi_x86 generator jsp linux_ppc netware palm_os sh4 unix
atheos cfm hardware lin_amd64 linux_sparc novell php solaris unixware
beos cgi hp-ux lin_x86 minix openbsd plan9 solaris_sparc webapps
bsd freebsd immunix lin_x86-64 mips openbsd_x86 qnx solaris_x86 win32

root@kali:/opt# head exploit-database/files.csv
id,file,description,date,author,platform,type,port
1,platforms/windows/remote/1.c,”MS Windows WebDAV (ntdll.dll) Remote Exploit”,2003-03-23,kralor,windows,remote,80
2,platforms/windows/remote/2.c,”MS Windows WebDAV Remote PoC Exploit”,2003-03-24,RoMaNSoFt,windows,remote,80
3,platforms/linux/local/3.c,”Linux Kernel 2.2.x – 2.4.x ptrace/kmod Local Root Exploit”,2003-03-30,”Wojciech Purczynski”,linux,local,0
4,platforms/solaris/local/4.c,”Sun SUNWlldap Library Hostname Buffer Overflow Exploit”,2003-04-01,Andi,solaris,local,0
5,platforms/windows/remote/5.c,”MS Windows RPC Locator Service Remote Exploit”,2003-04-03,”Marcin Wolak”,windows,remote,139
6,platforms/php/webapps/6.php,”WordPress <= 2.0.2 (cache) Remote Shell Injection Exploit",2006-05-25,rgod,php,webapps,0 7,platforms/linux/remote/7.pl,"Samba 2.2.x Remote Root Buffer Overflow Exploit",2003-04-07,"H D Moore",linux,remote,139 8,platforms/linux/remote/8.c,"SETI@home Clients Buffer Overflow Exploit",2003-04-08,zillion,linux,remote,0 9,platforms/windows/dos/9.c,"Apache HTTP Server 2.x Memory Leak Exploit",2003-04-09,"Matthew Murphy",windows,dos,0

Category: exploit | Exploit DatabaseがGithubにホストされたようです。 はコメントを受け付けていません
1月 6

MacでRaspberry Pi用のOSをSDにインストールするメモ

Windowsでのメモは多いのですがMac用のメモをあまり見かけないのでメモしておきます。

【準備】
ここから好きなディストリビューションをダウンロード。
(今回、ボクはRaspbianをダウンロードしました。)

ここからRPi-sd card builder をダウンロードします。

それぞれダウンロードしたら展開を行なってください。
01

【作業】
MacにSDカードを挿入してRPi-sd card builderを起動します。
起動するとイメージファイルを指定するようにとのメッセージが出るので予めダウンロードしておいたイメージファイルを指定し「選択」をクリックします。
02

SDカードが接続されているかの確認メッセージが表示されるので問題なければ
「Continue」をクリックします。
03

次にオプション画面に移りますので使用するSDカードにチェックを入れて「OK」をクリックします。このとき挿入されているSDカードが1枚の場合は始めからチェックが入っていると思います。複数表示されている場合は目的のSDカードにのみチェックをしてくください。
04

次に管理者パスワード(使用しているMacのパスワードです。)が
要求されるので入力し「OK」をクリックします。
05

SDカードが取り外されたかどうかの確認メッセージが表示されます。
ここではSDカードを物理的に取り外さず「Finder」でアンマウントされているかどうかのみを確認し、問題なくアンマウントされていれば「Continue」をクリックしてください。
06

これでSDカードにOSがインストールが開始されます。
(書き込み中はメニューバーで確認ができます。)
07

後は放っておくだけで暫くするとインストールが終わります。
08

これで作業は完了です。

SDカードをRaspberry Piに挿入し、使える状態になりました。

Category: memo | MacでRaspberry Pi用のOSをSDにインストールするメモ はコメントを受け付けていません
12月 24

パスワードの有効期間設定及び、パスワードの定期変更についてボクなりに再考してみましたよ。

総務省から「リスト型アカウントハッキングによる 不正ログインへの対応方策について(サイト管理者などインターネットサービス提供事業者向け対策集) 」がリリースされました。思うところがったので以前メモしたのですが、先日、その文書に関わった方と「パスワードの定期変更」についてTwitterでやり取りさせていただきました(やり取り内容はこちら)ので再度「パスワードの定期変更」について総務省からリリースされた文書(以下、文書)を参考に自分なりに考えてみようと思います。

ちなみにボクは、この策に対しては懐疑的、否定的で、リスト型攻撃を含む攻撃(辞書攻撃などを含む)に対抗する場合は、「パスワードの使い回しをやめる」ことと「容易に推測可能なパスワードは設定しない」という対策を行うべきだと考えており、定期変更は必要がないというスタンスです。(もちろん、自ら定期変更を行いたいという方は行っていただいても文句はありません。そこは自由だと思いますので。)

考えるポイントとしては
パスワードの有効期間設定及び、パスワードの定期変更の効果はあるか。
というものです。
また、関連する対策として
「パスワード履歴の保存」というものがあります。
こちらには以下のような記述があります。

パスワードの変更時期が来た際に、利用者が前回まで使用していたパスワードに戻してしまうなど、更新時期が来るたびに2つのパスワードが使い回しされては、攻撃者が保有するリストが再度有効なものになってしまい、意味がありません。そのため、上記(2)のパスワードの定期的な変更と合わせて、パスワードの更新履歴を保存し、変更時に過去のパスワードと照合して、数世代前に使用したパスワードへの変更を認めないようにすることも考えられます。

こちらも整理する際の考慮にいれます。

まずは、文書から読み取れる前提条件などの自分なりの整理。

【前提条件】
 ・ リスト型攻撃への対応。
 ・ 対象はオンライン上のサービスである。
 ・ サービスのユーザID、パスワードは利用者が設定できるサービスである。
 ・ サービス提供側が行える対策である。
 ・ ローカルネットワーク上のサービスやスタンドアロンコンピュータは対象外。

【リスト型攻撃の特徴】
 ・ ある程度の期間に渡り、検知に時間を要する。
 ・ 数万単位の不正ログインが行われる。
 ・ 利用者の通報、大量のエラーの発生、特定IPアドレスからの不正ログインの検知、社内の調査によって検知されている。
 ・ 指名、性別、生年月日、住所などの個人情報が閲覧されている可能性がある。

【定期変更関連以外に文書内で言及されている策】

 [予防策]
  ・ ID・パスワードの使い回しに関する注意喚起の実施
  ・ 二要素認証の導入
  ・ ID・パスワードの適切な保存
  ・ 休眠アカウントの廃止
  ・ 推測が容易なパスワードの利用拒否

 [被害の拡大を防ぐ対策]
  ・ アカウントロックアウト
  ・ 特定IのIPアドレスからの通信の遮断
  ・ 普段とは異なるIPアドレスからの通信の遮断
  ・ ログイン履歴の表示

整理は以上です。

さて、上記の整理を踏まえて

パスワードの有効期間設定及び、パスワードの定期変更の効果はあるか。

ということですが、効果があるとする主張される方の理由としては以下のものが挙げられるかと思います。

① どこかから漏えいしたリストの無効化を行うことができる。
② 万が一、ログインに成功されたとしても被害の拡大を防止できる。

それぞれ効果があるのかどうかということを考えてみます。

① どこかから漏えいしたリストの無効化を行うことができる。

こちらは、そもそもになるかと思いますが文書のP4で言及されている「ID・パスワードの使い回しなどの関する注意喚起」内にある

サービスごとに異なるパスワードを設定することが本質的な対策となります。

の部分ができていればパスワードの定期変更タイミングまで待つということを行う必要はないと思います。

また、Twitterでのやりとりで出てきたもので
「複数のサービスで定期変更のタイミングが異なるため、その異なるタイミングで各サービスで異なるパスワードを設定することを促すこととなるのではないか?」という意見がありました。
これに関してはあるかもしれませんし、ないかもしれません。
数字的な根拠はありませんが個人的な感覚としては、同じものを設定する、もしくは可能性が高いのではないかと思っています。仮に別のパスワードを設定されることがあったとしても許可されている世代数でパスワードを変更していく(3世代なら3つのパスワードをループさせる)という運用をユーザが行った場合、定期変更のタイミングのズレで一旦異なるパスワードとなったものが同じものになるタイミングを生んでしまう可能性もあるではないかと思います。ですので、必ずしも定期変更が使い回し減らすことには繋がらないのではないかと思います。

リスト型攻撃の特徴とは少し逸れますが、定期変更を繰り返すことで生まれるものはパスワードが容易に推測されるような文字列になり、それが複数のサービスで使い回されることの発生を誘発すると考えています。トレンドマイクロの調べによるとパスワードでログインが必要なWebの利用状況として、1ユーザあたり13.95サイト(標準偏差)を利用しているとのことです。使い回しをしない前提ですと、1人当たり約14のパスワードを覚えることになります。これに対し定期変更を行うとそれぞれのパスワードをその都度、覚えなおしになります。(パスワード管理ソフトやメモしている方は除く。)そうなれば、やはり、覚えやすいパスワード(つまりは攻撃者にも推測されやすい)を設定し、複数サービスで共通のものを設定してしまいがちとなるのではないでしょうか。

また、「どこからか漏れたリスト」と考えた場合、他から漏れたリストだけではなく、漏れた元とリスト型攻撃が行われる対象が同じという場合もあると思います。
漏れたリスト(攻撃者からすると盗んだリスト)のパスワードが平文ではなかった場合(多くの場合そうであってほしいのですが)攻撃者は平文に戻す処理を行う必要があります。いわゆるオフラインクラックですね。この平文に戻す処理を行っている間に定期変更のタイミングがやってくれば、攻撃者のオフラインパスワードクラッキングを振り出しに戻すことが可能と言えるでしょう。
しかし、ここではリスト型攻撃の特徴として文書にも挙げられている

・ 数万単位の不正ログインが行われる。
・ 利用者の通報、大量のエラーの発生、特定IPアドレスからの不正ログインの検知、社内の調査によって検知されている。

といった特徴を利用してサービス提供側が早期発見し、リセットなどの対策を取ってほしいとボクは思います。

また、定期変更が招くと考えらえれる「容易に推測可能な文字列」を設定した場合は、パスワードの保存の方法にもよりますが、オフラインクラックに耐性のないものとなってしまう可能性があると考えられます。

② 万が一、ログインに成功されたとしても被害の拡大を防止できる。

こちらは、不正ログインされたタイミングからほど近く、うまい具合に定期変更のタイミングが来た時には効果はあると思います。ただ、文書中P3で言及されている「これまでのリスト型攻撃による被害の特徴」にある

氏名、性別、生年月日、住所などの個人情報が閲覧されている可能性があ
ること

これが仮に目的であった場合は不正ログインを行われてすぐにでもアクセス可能な情報であると考えられるためうまい具合に定期変更のタイミングで守られるとは考えにくく、守れることはかなりのレアケースなのではないかと考えられます。

それ以外の目的であった場合を考えてみます。

不正ログインを行った後、オンラインバンキングで送金処理を行う、ポイントサービスを用いてポイントを不正利用するなどが考えられると思います。前者の場合は、殆どの場合において新規の送金先に送金する場合は何かしらの追加認証が用意されていますので、実際に送金することはパスワードのみでは行うことができません。(住所変更などを行う場合も別の認証が設けられている場合もありますね。)後者の場合は残念ながら追加の認証がない場合が殆どです。では、これが定期変更のタイミングで守りきれるのか?と考えるとやはり疑問が残ります。

先日こんな事件がありました。

楽天ポイント盗み、電子マネーに=不正アクセス容疑で中国人逮捕-岐阜県警

IDとパスワードが流出! キミの楽天ポイントも知らずに盗まれる?

記事を読む限り、どこからか漏れたリスト(楽天でのログインができるできないの確認はしているかどうかは不明)を買い取ったとされる容疑者が犯行に及んだと考えられます。このケースの場合は、どこかからリストが漏れてから実際の被害が発生するまで、前に例で挙げた目的である個人情報を閲覧されるよりもタイムラグがあると考えられます。これであれば定期変更のタイミングでユーザがパスワードを変更すれば不正ログインすることを防ぐのに間に合うタイミングは多少あると思います。しかし、これもタイミングという曖昧なものに頼るのではなく、どこかから漏れたリストを使われたとしてログインできないよう使い回しをやめるというところに力を注ぐべきではないでしょうか。

また、サービス提供側でできる対策としては賛否が分かれるところではあると思いますが

Adobeの個人情報流出のお知らせ、なぜかEvernoteから

一部のYahoo! JAPAN IDに対するパスワードリセット措置について

といったことを実施しているところもあります。

【まとめ的なもの】

ボクの中では、やはり、どうしても「定期変更」によって得られる恩恵はかける労力に見合わなさすぎるという結論です。
ボクは前述した通り、、「パスワードの使い回しをやめる」ことと「容易に推測可能なパスワードは設定しない」に注力することが先決であるという考えは変わりません。
これら2つの対策は単体でも相当の効果が得られる(前者はリスト型攻撃に対して、後者は辞書攻撃などの推測でのログイン試行に対して)のに対して、定期変更は単体での効果も薄く曖昧で、かつ、この2つの阻害要因ともなりえると思っています。

ユーザにはユーザに委ねられる部分である

・パスワードの使い回しをやめる
・容易に推測可能なパスワードは設定しない

を行ってもらうようにし、サービス提供側が行えることについては定期変更に関するもの以外を運用との兼ね合いを考慮した上で行ってもらうというのが現状の現実解なのではないでしょうか。

もちろん、定期変更をやめることで、この2つの対策が必ず行われ、すべてがクリアになるのかというとそういうわけではありませんが、ユーザに対しては必要最低限の労力をかけてもらうようにし、何を行うべきかを示し、それに注力してもらうべきなのではないかとボクは思います。
対策としては、パスワード管理ソフトの使い方を覚えるか(場合によっては有料のソフトもあるのでお金が必要なケースもあります。)、メモというアナログな方法での運用でカバーかというところですね。どちらでもよいと思いますし工夫次第かと思います。ボクとしてはボクが便利と感じるパスワード管理ソフトをおすすめしたいところですが、すべての人が使いこなせるわけではないのでパスワード管理ソフト1択とはできないと思っています。
また、パスワード管理ソフトって言っても全てが有料というわけではありません。複雑なパスワードを設定して、使い回さず、定期変更が必要なのでパスワード管理ソフトを買わないといけませんよ!なんて言ってくる人がいたらそれは「セキュリティ詐欺」だと思っていいと思います。

「パスワードが長期間変更されていません。」
「パスワードは定期的に変更してください。」

といったようなことが書かれているところが消え
パスワードを設定する際に

「容易に推測可能なパスワードを設定していませんか?」
「他のサイトでのパスワードの使い回しをしていませんか?」

に対するチェックボックスなんかが表示されたり、そこを「はい」にしないと
それらの脅威を説明するページに飛ばされたりする日がくればいいなって思いました。
ちょっと鬱陶しいですかね?

Category: memo | パスワードの有効期間設定及び、パスワードの定期変更についてボクなりに再考してみましたよ。 はコメントを受け付けていません
12月 20

Windowsのndproxy.sysの脆弱性により、権限昇格が行える脆弱性(CVE-2013-5065)に関する検証レポート

【概要】
Microsoft WindowsXPまたは2003のndproxy.sysに、ローカルより権限昇格を行える脆弱性(CVE-2013-5065)が発見されました。この脆弱性は、ndproxy.sysドライバへの入力値に対する検証において、不備があることにより発生します。これにより、権限の低いユーザから権限昇格を行うことができ、その権限で任意のコードの実行が可能となります。

攻撃者がこの脆弱性を利用するためには、システムへの有効なログオン情報が必要になります。
攻撃者が何らかの方法でシステムの一般ユーザでのアクセス権を獲得した場合、この脆弱性を利用することで管理者権限も同時に掌握されます。その結果、管理者権限でシステムを操作し、重要情報の改ざん、窃取されてしまうといった危険性があります

本レポート作成(2013年12月20日)時点において、Microsoft社から脆弱性への対策、回避策などのアナウンスが公開されております。しかし、本脆弱性に対応した修正プログラムはリリースされておりません。この脆弱性はローカル環境で発現するものですが、攻撃を成立させるためのコードが容易に入手可能であり、かつ、すでに攻撃に利用されているとの報告もあるため、今回、この脆弱性の再現性について検証を行いました。

【影響を受ける可能性があるシステム】
– Windows XP Service Pack 3
– Windows XP Professional x64 Edition Service Pack 2
– Windows Server 2003 Service Pack 2
– Windows Server 2003 x64 Edition Service Pack 2
– Windows Server 2003 with SP2 for Itanium-based Systems

【対策案】
本レポート作成(2013年12月20日)時点において、Microsoft社から本脆弱性を修正するプログラムはリリースされておりません。
Microsoft社からndproxy.sysを無効化するという回避策が案内されております。

【参考サイト】
CVE-2013-5065

マイクロソフト セキュリティ アドバイザリ (2914486)
Microsoft Windows カーネルの脆弱性により、特権が昇格される

【検証イメージ】
P05_post

【検証ターゲットシステム】
WindowsXP Professional SP3
Windows Server 2003 R2 SP2

【検証概要】
MS13-080を利用して、一般ユーザ権限(Users権限)を奪取した後、本脆弱性(CVE-2013-5065)を利用し、SYSTEM権限へと昇格を行うというものです。

【検証結果】
下図は、攻撃後の誘導先のコンピュータ(Linux)のターミナルの画面です。赤線で囲まれている部分は、ターゲットPC(WindowsXP Professional SP3)にMS13-080を利用し、Users権限を奪取しています。ここでは、User1(Users権限)で接続が行われています。一方、黄線で囲まれている部分は、本脆弱性を利用後の状態です。ここでは、SYSTEM権限で接続が行われています。これにより、権限昇格を行うことに成功したと言えます。

P04_cve-2013-5065_cut3

WindowsXPは2014年4月9日に、Windows Server 2003は2015年7月14日にMicrosoft社のサポートが終了します。

サポート終了後はこのような脆弱性が発見されたとしてもマイクロソフト社による修正は行なわれないため非常に危険な状態となる場合があります。特別な理由がない限り、新しいOSへの移行を行なっていただく事を推奨いたします。

reported by y.izumita, ntsuji

Category: exploit | Windowsのndproxy.sysの脆弱性により、権限昇格が行える脆弱性(CVE-2013-5065)に関する検証レポート はコメントを受け付けていません
12月 19

リスト型アカウントハッキングによる不正ログインへの対応方策について メモ

総務省から「リスト型アカウントハッキングによる 不正ログインへの対応方策について(サイト管理者などインターネットサービス提供事業者向け対策集) 」がリリースされました。そちらについての思うところメモ。

【P2】

このようなリスト型攻撃から個人情報や信用情報などを守るためには、利用者において、自身のID・パスワードの管理に際して対策を実施していただく必要があることは言うまでもありません。しかし、リスト型攻撃による不正アクセスの発生やそれに伴う個人情報の漏洩は、企業のコンプライアンス上問題となり、企業の信用を損ねる恐れがある他、内部調査及び復旧のためにサービスを停止する事態になれば、多くの機会損失が発生することになるなど、サービスを提供する事業者自身の問題とも言えます。

ユーザが設定するパスワードが推測可能なものか、使い回しているかということは最終的にユーザの責任において行われるべきものだと思います。
そこでユーザにきちんと注意喚起や保護する仕組みを提供することはサービス提供側が行ってほしいことではあると思います。しかし、おんぶに抱っこをしないからといって、それが企業コンプライアンスに関わるのかというとそれは違うと思います。
この類の話をするときにボクは自動車メーカーとドライバー(運転手)の話をします。自動車メーカーはサービス提供側、ドライバーはユーザです。
調べてみると分かるのですが(たとえばこのあたりとか)自動車メーカーは安全に対して様々な技術を取り入れています。エアバッグ、歩行者障害低減ボディ、アクティブセーフティ技術などなど。
こういった安全技術が取り入れられていたとしても、ドライバーが飲酒、スピード超過など危険運転を行ってしまっては元も子もありません。

これと同じでサービス提供側とユーザで各々が担う部分があり、双方の努力と歩み寄りを行うような空気や理解を広めていかなければならないのだと思います。サービス提供側が一方的に攻められ負担を強いられるようなセキュリティではあってはならないと思うのです。

【P4】

② パスワードを定期的に更新し、リストを陳腐化する

とありますが、複数のサイトで同一のパスワードを使い回していなければ「定期的」に変更し続ける必要はないと思います。サービスから漏えいが発生してしまったのであれば、ユーザへは漏洩が発覚したときに利用されていたパスワードを使って不正ログインできないようにするために一度変更してもらえばよいはずです。もしくは、サービス提供者の側でリセットを行い、以前使っていたパスワードとは別のものを再設定してもらうよう注意を促すほうがよいのではないでしょうか。もう少し踏み込んだサービス提供側のアクションとしては、他のサービス提供者で漏えいが発覚した際には、そちらの情報を元に注意を促したり、自サービスでパスワードのリセットなどを行うといったことも最近はちらほら行われてきているようです。

【P5】

(2)パスワードの有効期間設定

これに関しては同意できません。
パスワードの定期変更の理由として、定期変更のタイミングで被害を食い止めて、被害の拡大を防止するというものが挙げられますが、これは「情報は盗まれる。不正利用はされる。でも、され続けない。」という些細な効果しかないと思っています。ここの項目では有効期間を設定する理由として、どこからか漏えいしたID、パスワードのリストを陳腐化させるというものが挙げられているのですが、文末には

また、有効期間も一年、半年にするなど、事業者で管理している情報の価値に応じて設定することも一案です。

とあります。
仮に半年とした場合、最長で半年間は不正ログインされ続けることになりますのでリストを陳腐化することができる有効な対策とは言えないと思います。
数時間から数日で攻撃者は欲しい情報を手に入れていくことでしょう。
だからといって変更の感覚を短くすることはユーザへの負荷を高めるだけで利便性を大きく損ない、まさに本文に書いてある通り

ただし、パスワードの有効期限を短くして利用者に頻繁に変更を求めすぎると、利用者が、他人に推測されやすい簡単なパスワードを設定する傾向に陥りやすく、窃取される危険性を高めることもあるので注意を要します。

を招いてしまうことになると思います。

リストを陳腐化させることに対して敢えて、定期変更が有効であるという理由を挙げるとするならば、リスト型攻撃を行った攻撃者がリスト内の有効なアカウント(不正利用可能なアカウント)を確認した上で自分ではそれ以上のことを行わず、他者に売り渡すというパターンでしょうか。それでもやはり半年というのは悪用することにおいて十分な期間とも考えられますし、そもそも、リスト型攻撃のような分かりやすい攻撃が発生していることをサービス提供側がいち早く検知し、対処を行う仕組みを用意することのほうが必要で有効であると言えると思います。
(これについてはP11で触れられていますね。)

【P11】

② 攻撃が行われているIPアドレスからの通信を遮断する

これは有効だとは思います。
しかし、11月に起きた「GitHub」への攻撃では4万あまりにIPアドレスを使った攻撃(リスト型攻撃ではなくブルートフォース攻撃と言われている。)であるとのことですので、そういった場合は、有効性が低くなるということは理解しておく必要があると思います。巷には、リスト型攻撃対策として閾値を超えるログイン試行があった場合はその攻撃元のIPアドレスをブロックするという製品がありますが、リスト型攻撃を行われた場合、そのリストの質によっては、はその閾値以下のログイン試行は成功/失敗確認が取れるということになります。5回を閾値として6回目以降をブロックというものであればIP数 x 5回の確認は行えるということになります。また、閾値が外部から挙動をチェックすることで分かればその閾値以下ギリギリの試行を行って、別のIPに切り替えるということをすればブロックされたことを通知するようなアラートがあった場合、そのアラートは上げさせないということもできそうですね。
IPアドレスを頻繁に変えつつ試行を行っても短時間に行われれば通常よりも集中したアクセスであると検知しやすい側面があるのかもしれませんが、今後はもしかすると時間をかけたものも現れるのかもしれませんね。この辺りは攻撃者のトレードオフに対する考え方にもよるのだとは思いますが。

【さいごに】
リスト型攻撃って本当に厄介なものだなと思うわけですが、冒頭にも書いたようにサービス提供側とユーザ双方の努力と理解による歩み寄りが必要性が顕著に表れているものだなと思います。
過去にセキュリティって誰のためのものなのか?ということを考えたことがあるのですが、セキュリティって一部の専門家のためのものではなくて、脆弱性から保護することよろしく、弱い者(あるいは物、箇所)を守るためにあると思いました。とすれば、守る者と守られる者がいるわけで、つまるところ、みんなのものだと思います。みんなのものであればみんなで役割分担、当事者意識を持っていけるようなものにしていかないといけないなって心底思います。

地道でも頑張っていかないといけないなって改めて思います。

Category: memo | リスト型アカウントハッキングによる不正ログインへの対応方策について メモ はコメントを受け付けていません
11月 29

ActiveXコントロールの処理の脆弱性により、任意のコードが実行される脆弱性(CVE-2013-3918)に関する検証レポート

【概要】
Microsoft ActiveXコントロールに、リモートより任意のコードが実行される脆弱性(CVE-2013-3918)が発見されました。
この脆弱性はActiveXコントロールのicardie.dllに存在しており、Internet Explorerが細工されたActiveXコントロールを読み込む際に、メモリの範囲外へアクセスすることにより発生します。これにより、Internet Explorerは不正なメモリアドレスを呼び出すよう強制されます。

攻撃者は、細工されたWebサイトを利用者に訪問させることにより、リモートからInternet Explorerを実行する利用者のユーザ権限で任意のコードを実行できる危険性があります。攻撃者は、ブラウザ経由で細工されたWebサイトにユーザを誘導することや、細工されたWebサイトへのリンクを添付した電子メールを送信し、攻撃対象ユーザにファイルを開かせることで、ログオンしているユーザと同じ権限を奪取される危険性があります。

現時点(2013年11月28日)において、検証に使用した攻撃コードは英語版のWindowsを対象としています。しかしながら今後、他の言語に対応した攻撃コードが出現する可能性は高いことから、脆弱性の再現性について検証を行いました。

【影響を受ける可能性があるシステム】
– Windows XP Service Pack 3
– Windows XP Professional x64 Edition Service Pack 2
– Windows Server 2003 Service Pack 2
– Windows Server 2003 x64 Edition Service Pack 2
– Windows Server 2003 with SP2 for Itanium-based Systems
– Windows Vista Service Pack 2
– Windows Vista x64 Edition Service Pack 2
– Windows Server 2008 for 32-bit Systems Service Pack 2
– Windows Server 2008 for x64-based Systems Service Pack 2
– Windows Server 2008 for Itanium-based Systems Service Pack 2
– Windows 7 for 32-bit Systems Service Pack 1
– Windows 7 for x64-based Systems Service Pack 1
– Windows Server 2008 R2 for x64-based Systems Service Pack 1
– Windows Server 2008 R2 for Itanium-based Systems Service Pack 1
– Windows 8 for 32-bit Systems
– Windows 8 for x64-based Systems
– Windows 8.1 for 32-bit Systems
– Windows 8.1 for x64-based Systems
– Windows Server 2012
– Windows Server 2012 R2
– Windows RT
– Windows RT 8.1

【対策案】
Microsoft社より、この脆弱性を修正するプログラム(MS13-090)がリリースされています。
当該脆弱性が修正された修正プログラムを適用していただくことを推奨いたします。

【参考サイト】
CVE-2013-3918

マイクロソフト セキュリティ情報 MS13-090 – 緊急
ActiveX の Kill Bit の累積的なセキュリティ更新プログラム (2900986)

【検証イメージ】
P01_connectback

【検証ターゲットシステム】
Windows XP SP3 英語版

【検証概要】
脆弱性の存在するターゲットPCより、攻撃者が作成した細工された応答を返すサーバにアクセスすることで脆弱性を利用した攻撃を行い、任意のサーバの任意のポートにコネクトバックさせ、結果、シェルを奪取するというものです。
これにより、リモートからターゲットPCの操作が可能となります。

【検証結果】
下図は、攻撃後の誘導先のコンピュータ(MacOS X)の画面です。赤線で囲まれている部分は、誘導先のコンピュータのホスト情報です。一方、黄線で囲まれている部分は、ターゲットPC(Windows XP)において、コマンドを実行した結果が表示されています。
これにより、ターゲットPCの制御を奪うことに成功しました。

P02_MS13-090en_cut

reported by y.izumita, ntsuji

Category: exploit | ActiveXコントロールの処理の脆弱性により、任意のコードが実行される脆弱性(CVE-2013-3918)に関する検証レポート はコメントを受け付けていません
11月 1

CGI版のPHPの処理の脆弱性により任意のコードが実行される脆弱性(CVE-2012-1823)に関する検証レポート

【概要】
DebianやUbuntuのphp5-cgiパッケージに、リモートより任意のコードが実行される脆弱性(CVE-2012-1823)を利用可能な、新たな攻撃コードが発見されました。
この脆弱性(CVE-2012-1823)は、PHPをCGIモードで動作させている場合に影響を受け、攻撃対象からPHPのソースコードを漏洩させる、または任意のコードを実行することが可能になります。
DebianやUbuntuのPHPのソースコードsapi/cgi/cgi_main.cでは、php.iniに対してcgi.force_redirectがセットされる際に、cgi.redirect_status_envはデフォルトでnull値が設定されます。これにより、ApacheなどのWebサーバを利用している場合にPHPのセキュリティチェック機能が回避され、任意のコードが実行可能となります。

攻撃者は、CGIモードで動作しているPHPコンテンツに対して、リモートからソースコードを参照したり、またはWebサーバの動作権限で任意のコードの実行が可能です。(2013年11月7日修正)
攻撃者は、CGIモードで動作しているPHPコンテンツまたはphp-cgiに対して、リモートからソースコードを参照したり、またはWebサーバの動作権限で任意のコードの実行が可能です。

今回、この脆弱性の再現性について検証を行いました。

【影響を受ける可能性があるシステム】
– PHP 5.4.2 以下のバージョン
– PHP 5.3.12 以下のバージョン

【対策案】
この脆弱性が修正されたPHPバージョン5.4.2よりも新しいバージョンのPHP、または、5.3.12よりも新しいバージョンのPHPにアップデートしていただく事を推奨いたします。

【参考サイト】
CVE-2012-1823

【検証イメージ】
cve-2012-1823image

【検証ターゲットシステム】
Debian 5.0.9

【検証概要】
脆弱性の存在するターゲットPCより、攻撃者が作成した細工された応答を返すサーバにアクセスすることで脆弱性を利用した攻撃を行い、任意のサーバの任意のポートにコネクトバックさせ、結果、シェルを奪取するというものです。
これにより、リモートからターゲットPCの操作が可能となります。

【検証結果】
下図は、攻撃後の誘導先のコンピュータ(MacOS X)の画面です。黄線で囲まれている部分は、誘導先のコンピュータのホスト情報です。一方、赤線で囲まれている部分は、ターゲットPC(Debian)において、コマンドを実行した結果が表示されています。
これにより、ターゲットPCの制御を奪うことに成功しました。

cve-2012-1823cutline

special thx:
y.izumita

【2013年11月7日修正】
コメントをいただきましたので本文を訂正させていただきました。
ozuma5119さん、ご指摘ありがとうございます。

Category: exploit | CGI版のPHPの処理の脆弱性により任意のコードが実行される脆弱性(CVE-2012-1823)に関する検証レポート はコメントを受け付けていません
10月 29

zmapを32bitのKaliにインストールしましたよ。

ミシガン大学の研究者たちが開発したオープンソースのネットワークスキャナ「ZMAP」を32bit環境インストールしたときのメモです。このツールは、ステートレス化を行なうことでインターネット上にあるすべてのIPv4アドレスをわずか45分でスキャンできたという鳴り物入りのツールです。

下準備

sudo apt-get install libgmp3-dev libpcap-dev gengetopt

ダウンロードと展開・移動

wget https://github.com/zmap/zmap/archive/v1.0.3.tar.gz
tar zxvf v1.0.3.tar.gz
cd v1.0.3

このツールは64bit環境での動作を想定しているそうなのですが
32bit環境でもソースの一部を修正することで動作させることが可能となります。

修正箇所は以下の通りです。

【lib/blacklist.c】
127行

allowed, allowed*100./(1L << 32)); ↓ allowed, allowed*100./((long long int)1 << 32));

【src/zmap.c】
84行

#define SLU(w,x,y) printf(“%s\t%s\t%lu\n”, w, x, y);

#define SLU(w,x,y) printf(“%s\t%s\t%lu\n”, w, x, (long unsigned int)y);

461行

v = v * (1L << 32) / 100.; ↓ v = v * ((unsigned long long int)1 << 32) / 100.;

470行

else if (v >= (1L << 32)) { ↓ else if (v >= ((unsigned long long int)1 << 32)) {

インストール

cd src
make
make install

参考URL:
https://github.com/zmap/zmap/commit/779424fe2c7bd6bee525a1705fa878b965fb242c

Category: memo | zmapを32bitのKaliにインストールしましたよ。 はコメントを受け付けていません
10月 25

Apple IDのログインを失敗するとどうなるか確認しましたよ。

最近話題になっているApple IDですが
気になったので自分のApple IDでログインの失敗をするとどうなるのかの確認をしてみました。

きっかけはこちらの記事に以下のようにあったためです。

まず実際に筆者がApple IDで受けた経験を基に、リスト攻撃を受けた際の状況を見てみよう。

 図1は、筆者がApple IDに対して攻撃を受けた際に、Appleから受け取ったパスワードリセットに関するメールのスクリーンショットである。このメールは図2に示した通り、2013年10月22日から23日の間に5回届いている。つまりこの短期間に5回の攻撃を受けたということだ。

このページから「Apple IDを管理」を選択。
WS000074

「サインイン」画面に移るのでそこで何度か間違えてみます。
WS000075

3回間違えると強制的に「パスワードの再設定」に移動します。
WS000077

この画面は「サインイン」の画面にある「パスワードをお忘れの場合」をクリックしたときと同じページです。
ここで自身のApple IDを入力すると(数回間違えた際にはサインイン時に入力したものが自動で入力されるようです。)以下のような画面に移ります。
WS000078

ここで「Eメール認証」を選択して「」次へをクリックすると設定しているメールアドレスにパスワード再設定のためのリンクが記載されたメールが「appleid@id.apple.com」から届きます。
WS000079

ボクが試して範囲では、ログイン試行を3回失敗して、なおかつ、「Eメールによる認証」を行うという選択をしなければAppleからのパスワード再設定のメールは届かないということが分かりました。オンラインパスワードクラッカーなどを使って多くの試行を行ってはいませんがそれだけではこのメールは届かないような気がします。試しに手動でパスワードの再設定を行わず10回ほどサインインの失敗をしてみましたがメールは届きませんでした。ログイン試行を繰り返す攻撃だけでは通知はいかないものと考えられます。

ボクの気になった記事とは別に
フィッシング?:アップルIDのパスワード狙う 大量にメール送信

【注意喚起】Apple IDの「パスワード再設定」をかたるメールに注意 / 念のためパスワード等の変更を
といった記事が出ていますがこれがフィッシングメールかどうかというところはこの話とは別に気になります。

もちろん、身に覚えのないメールであれば放置しておくことが一番だと思います。

どなたか受け取った方いらっしゃいましたらこっそり情報いただけると嬉しいです。

【10月27日追記】
このメールがフィッシングではないということを前提条件としてAppleからのメールを送ることで成立する攻撃を行なうためには、攻撃を行なうターゲットのメールアカウント自身の制御下に置いておく必要があると思います。
つまり、Apple IDでパスワードをリセットする前にリセット用のURLが送信されるメールアカウントを事前に乗っ取っておくということです。そうすれば、攻撃者は、リセットメールに記載されたURLにアクセスすることで自身の好きなパスワードを設定することが可能であるためターゲットのApple IDを乗っ取ることに成功することでしょう。

しかし、攻撃者はリセットを行なった後のメールは正規のユーザが見る前に削除すると思いますし、Apple IDのパスワードをリセットして正規のユーザのものと異なるものを設定した場合は、正規のユーザが利用するタイミングで発覚してしまいますね。発覚するまでに不正利用してしまうという考え方もあると思いますが、攻撃者としては正規のユーザが設定したパスワードを知りたいと思うような気がしますね。

転送先を追加しておくということも考えたのですが、それでも正規のユーザの目にメールが触れてしまうことを避けたいと考えるでしょう。
ものは試しということで自分のgmailアカウントに転送設定をしてみたのですが転送設定を完了させると転送元にログインした時点でこのような通知が表示されます。

gmail_fw_notify
設定では転送したメールをメールボックスから自動で削除することもできます。

gmail_fw_op

また、outlook.comでもgmail同様に設定ができ、転送されていることの通知も表示されました。
outlook_fw_op

outlook_fw_notify

引き続き、Apple IDからこの手のメールが来た方いらっしゃいましたら情報をいただければ幸いです。

Category: memo | Apple IDのログインを失敗するとどうなるか確認しましたよ。 はコメントを受け付けていません
10月 1

Internet Explorerのmshtml.dll存在するuse-after-freeの脆弱性により、 任意のコードが実行される脆弱性(CVE-2013-3893)に関する検証レポート

【概要】
Microsoft Internet Explorerに、リモートより任意のコードが実行される脆弱性(CVE-2013-3893)が発見されました。この脆弱性は、日本の複数の組織を攻撃目標としていることから最近話題となっている問題です。
この脆弱性はmshtml.dllモジュールに存在しており、オブジェクトが解放される際に、オブジェクトへのポインタを削除しないために発生します。これにより、Internet Explorerは不正なメモリアドレスを呼び出すよう強制されます。

攻撃者は、細工されたWebサイトを利用者に訪問させることにより、リモートからInternet Explorerを実行する利用者のユーザ権限で任意のコードを実行できる危険性があります。攻撃者は、細工されたWebサイトにユーザを誘導することや、細工されたWebサイトへのリンクを添付した電子メールを送信し、攻撃対象ユーザにファイルを開かせることで、ログオンしているユーザと同じ権限を奪取される危険性があります。

現時点(2013年10月1日)において、Microsoft社から脆弱性への対策、回避策などのアナウンスが公開されております。しかし、脆弱性に対応した修正するプログラムはリリースされておりません。システムへの影響が大きいことから、脆弱性の再現性について検証を行いました。

【影響を受ける可能性があるシステム】
■Internet Explorer 6
– Windows XP Service Pack 3
– Windows XP Professional x64 Edition Service Pack 2
– Windows Server 2003 Service Pack 2
– Windows Server 2003 x64 Edition Service Pack 2
– Windows Server 2003 with SP2 for Itanium-based Systems

■Internet Explorer 7
– Windows XP Service Pack 3
– Windows XP Professional x64 Edition Service Pack 2
– Windows Server 2003 Service Pack 2
– Windows Server 2003 x64 Edition Service Pack 2
– Windows Server 2003 with SP2 for Itanium-based Systems
– Windows Vista Service Pack 2
– Windows Vista x64 Edition Service Pack 2
– Windows Server 2008 for 32-bit Systems Service Pack 2
– Windows Server 2008 for x64-based Systems Service Pack 2
– Windows Server 2008 for Itanium-based Systems Service Pack 2

■Internet Explorer 8
– Windows XP Service Pack 3
– Windows XP Professional x64 Edition Service Pack 2
– Windows Server 2003 Service Pack 2
– Windows Server 2003 x64 Edition Service Pack 2
– Windows Server 2003 with SP2 for Itanium-based Systems
– Windows Vista Service Pack 2
– Windows Vista x64 Edition Service Pack 2
– Windows Server 2008 for 32-bit Systems Service Pack 2
– Windows Server 2008 for x64-based Systems Service Pack 2
– Windows 7 for 32-bit Systems Service Pack 1
– Windows 7 for x64-based Systems Service Pack 1
– Windows Server 2008 R2 for x64-based Systems Service Pack 1
– Windows Server 2008 R2 for Itanium-based Systems Service Pack 1

■Internet Explorer 9
– Windows Vista Service Pack 2
– Windows Vista x64 Edition Service Pack 2
– Windows Server 2008 for 32-bit Systems Service Pack 2
– Windows Server 2008 for x64-based Systems Service Pack 2
– Windows 7 for 32-bit Systems Service Pack 1
– Windows 7 for x64-based Systems Service Pack 1
– Windows Server 2008 R2 for x64-based Systems Service Pack 1

■Internet Explorer 10
– Windows 7 for 32-bit Systems Service Pack 1
– Windows 7 for x64-based Systems Service Pack 1
– Windows Server 2008 R2 for x64-based Systems Service Pack 1
– Windows 8 for 32-bit Systems
– Windows 8 for 64-bit Systems
– Windows Server 2012
– Windows RT

■Internet Explorer 11
– Windows 8.1 for 32-bit Systems
– Windows 8.1 for 64-bit Systems
– Windows Server 2012 R2
– Windows RT 8.1

【対策案】
この脆弱性は、このエントリー作成現在、修正プログラムがリリースされいないため暫定の回避策を行うことになります。Microsoft社では、回避策としてFix it ソリューションマイクロソフト セキュリティ アドバイザリ: Internet Explorer の脆弱性により、リモートでコードが実行されるの適用、またはEMETの導入、またはInternet Explorerのセキュリティゾーンを「高」とする、を推奨しています。これらの詳細については、マイクロソフト セキュリティ アドバイザリ (2887505)の[推奨するアクション] [回避策]をご覧ください。

【参考サイト】
CVE-2013-3893

マイクロソフト セキュリティ アドバイザリ (2887505)
Internet Explorer の脆弱性により、リモートでコードが実行される

Internet Explorer の脆弱性対策について(CVE-2013-3893)

【検証イメージ】

attack_img

【検証ターゲットシステム】
Windows 7 SP1上のInternet Explorer 9、およびOffice 2007

【検証概要】
脆弱性の存在するターゲットPCより、攻撃者が作成した細工された応答を返すサーバにアクセスすることで脆弱性を利用した攻撃を行い、任意のサーバの任意のポートにコネクトバックさせ、結果、シェルを奪取するというものです。
これにより、リモートからターゲットPCの操作が可能となります。

【検証結果】
下図は、攻撃後の誘導先のコンピュータ(MacOS X)の画面です。黄線で囲まれている部分は、誘導先のコンピュータです。一方、赤線で囲まれている部分は、ターゲットPC(Windows 7)において、コマンドを実行した結果が表示されています。
これにより、ターゲットPCの制御を奪うことに成功しました。

cve-2013-3893cut

special thx:
y.izumita

Category: exploit | Internet Explorerのmshtml.dll存在するuse-after-freeの脆弱性により、 任意のコードが実行される脆弱性(CVE-2013-3893)に関する検証レポート はコメントを受け付けていません