ASLRの設定変更

## あちこちに分散してメモしていた数年分の内容を暇を見つけてメモる vol.1

 

Debugger で動的解析をする際に邪魔になる ASLR(Adress Space Layout Randomization)は、PEの Optional Header の中を直接編集して変更がお手軽(PEヘッダから 5F Byte 目)。Stud_PE などのツールを使うのもあり。

 

有効:

f:id:waraiotok0:20180217190939p:plain

 

無効:

f:id:waraiotok0:20180217191009p:plain

 

ついでにメモ:

JVNVU#91363799: Windows 8 およびそれ以降のバージョンにおいて、アドレス空間配置のランダム化が適切に行われない脆弱性

 

BRs,

総務省からの公衆無線LAN規制強化のニュースの話

あちこちでニュースになっていますね(^^)

 

どうも伝え方がよくないのか、記事のタイトルが「パスワード不要を自粛」といった類のものが多い、、、。実際は、暗号化してない環境(Open)の提供を自粛してね、という話のはず。

 

暗号化してない公衆無線のモニタの話は以前にも書きましたので、そちらを。

waraiotok0.hatenablog.com

ついでに、そんな環境がどれくらいありそうなのかも、別のエントリで。

waraiotok0.hatenablog.com

今後、有識者会議を開くとのことなので(なんとなく参加者が想像できる^^)、その内容はきっとしっかりしたものになると考えていますが、利便性と安全性のバランスはなかなか難しい議論になりそうですね。

 

仮に PSK を利用するとして、きっと店舗ごとに異なる Key(とSSID)で運用する、定期変更などは難しいだろうし、壁に貼ってあったりするわけで。ないよりは良いとしても、ある程度の意思を持って攻撃する人には(ry

 

あちこちの公衆無線LANにつなぐ度に調べているのですが、いまだに東西通信が許可されている(セパレータが効いてない)環境も多くありますので、Open を自粛すると共に、セパレータの導入など、適材適所での指針が出ることを期待して待ちたいですね。

 

そして、利用者側もリスクを理解して、利便性と安全性のバランスを意識して利用していきたいですね。

 

BRs,

KRACKs に思う。

巷では KRACKs が大人気なわけですが、Open な公衆無線LAN環境(スター〇ックスさんとかとかとか)や、PSK が壁に貼ってある公衆無線LAN環境が多い状況で、なんだかなぁ。と思ってしまう今日この頃です。

 

waraiotok0.hatenablog.com

 

エンプラにも効くという点では、もちろん状況は違うけれども。でも、ほら、物理的に隣接(ry

 

脅威は正しく理解して、適切に怖がることができたら素敵ですが、普段からそんなこと気にしない人々には、そんなことを求めるほうが間違っているわけで。メディアや専門家には、ぜひ無駄に煽ることのないような情報を展開して欲しいですよね。

 

技術的には面白いので PoC にたどり着いたら、ぜひ挑戦してみたい(^^

 

BRs

WPA2-PSK (AES) の PSK 解析

// WEPについては、最近人気の AP はどの程度安全なのか - waraiotok0’s note の末尾を。

 

解析に利用できるツールはメジャーなところは、、、こんなところ? 今回は伝統的(?)な aircrack-ng で検証しました。

  • aircrack-ng : 最もオーソドックス、WPAのハンドシェイクのパケットを入手後に辞書と合わせてつど計算しながら頑張る
  • coWPAtty, pyrit : あらかじめ SSID と辞書からレインボーテーブルを作るので、SSID がわかっている場合は高速
  • reaver : WPSの解析にも対応、WPA2-PSK は辞書不要(時間がかかるっぽい)
  • HashCat (oclHashcat) : GPU対応、高速

 

基本的な流れは、こんな感じです。

  1. 対象とするアクセスポイントをモニタ
  2. 接続中の端末を強制的に disconnect してWPAの4ハンドシェイクのパケットを入手 (または、誰かがつなぐまで待っても良い)
  3. 辞書と頑張って突合する

 

辞書はここの辞書を使用。集録は 1,430万強ですが、一部がマルチバイト(?)で認識されず、ツール上での認識は 9,822,769 となりました。

 

一般的なものは割と網羅されている。 > password を含むものや、キー配列、watashi(私)のような日本語も

f:id:waraiotok0:20170829131206j:plain

 

周囲の無線LANをモニタしてターゲットの SSID を確認後に、そのアクセスポイントと接続端末間の通信のパケットをキャプチャしながらハンドシェイクを待つ。通常は目立たないようにパッシブの方が良いが、アクティブで disconnect してしまうのもあり。

f:id:waraiotok0:20170829131230j:plain

 

ハンドシェイクのパケットさえ入手できていれば、解析は現場から離れていても、オフラインであっても可能。 あとはひたすらヒットすることを祈る。

f:id:waraiotok0:20170829131313j:plain

 

運よくヒットすれば、こんな感じ。 この検証では 34 分ほど(辞書の73%まで進んだあたり)でヒット。

f:id:waraiotok0:20170829131330j:plain 

ちなみに、もう少し絞ることができるのならば、必要なものだけを辞書から引っ張りだしておいて、高速でヒットさせることはできるが、、、、 あまりないか。

 

以下の検証は辞書から Pa または pa で始まるパスワードだけを抜き出した list.txt で解析。明らかにデータサイズも小さいし、そりゃ高速ですわ。

f:id:waraiotok0:20170829131356j:plain

 

以上、備忘録。

 

BRs,

最近人気の AP はどの程度安全なのか

※本調査は 2016 年の夏に実施したものです^^

~~~~~~~~~~~~~~~~~~~~~~

みなさんもご家庭で無線LANの環境を整えているとは思うのですが、量販店等で売っている AP は初期状態でどの程度、安心、安全なのかを調べてみました。今回調査の対象としたのは、Amazon価格.com の売れ筋を確認し、以下の 2 つ。

 

 

提言については、後半に記載しますが、簡単に言うと、Aterm さんは Baffalo さんに比べて多機能で好印象。ただ、WEP がユーザも気づかない状態で使える状態になっているのは今すぐ止めた方が良い。

 

では、引き続き。 

 

今回は箱出し状態からの初期設定のみとして、その状態で利用することを念頭にしています。

 

// それぞれのラベルに印刷されている情報

f:id:waraiotok0:20170829122903p:plain// 設定をひたすらスクショした図 (涙ぐましい努力)

f:id:waraiotok0:20170829123005p:plain 

ラベルからの気づき

SSID にメーカ名あり

SSIDMACアドレスの一部を利用

・PSK はアルファベット小文字 13 文字(26^13)

 

 「War Driving での気軽な調査をしてみた記録 - waraiotok0’s note」と照らし合わせてみると、実ユーザもそのまま使ってる模様。

 

f:id:waraiotok0:20170829123745p:plain

 

GとAは近いMACを持つので、「MACアドレスを含むSSIDのリスク - waraiotok0’s note

」の問題はあるかもしれないが( Baffalo の AP は SSID の書式を変更したのか、という気づきも)、SSID のみからMAC の全体を把握するのは難しいので、ラベルのスクショを公開した程度では大丈夫そう。

 

SSID にメーカー名あり

・PSK は以下の記述あり(16^13)

f:id:waraiotok0:20170829123900p:plain

 

同じく War Driving の結果と照らし合わせてみると、やはりそのまま使っている。

 

f:id:waraiotok0:20170829123806p:plain

 

一方で「g に w」がついた WEP が多く確認されている。 これは何?(後述)

管理画面

初期値は安定の admin/admin

f:id:waraiotok0:20170829123947p:plain

 

 

初期 PW はなく、初回アクセス時に決める必要がある。ただ、長さなどに制限がない。お

f:id:waraiotok0:20170829124013p:plain

無線LANの設定

初期設定は WPA2-PSK の AES なので、望ましい状態。ANY接続は許可、つまり SSID のステルスは利用していない。 (このままでよい)

 

WEPは初期設定では OFF になっている。前述の War Driving の結果とも整合性がある。

f:id:waraiotok0:20170829124046p:plain

 

初期設定は WPA/WPA2-PSK の AES なので、望ましい状態。SSID ステルス機能はは利用していない。 (このままでよい)

f:id:waraiotok0:20170829124124p:plain

ところで War Driving の結果で出てきた「gw」は何者か?

ドロップダウンを確認したら、、、   いた。

f:id:waraiotok0:20170829124158p:plain

 

ラベルにも記載がないステルスモードで動いている WEP という、誰得?な隠し設定。

一応、NW分離とセパレータが ON で固定とはいえ、、、。 ユーザが気づかないところで。

さらに、この情報は状態一覧(サマリ)にも記載がないのは、、、 よろしくない。

ということで、WEPのパスフレーズの解析を行ってみた。(結果は本スレ後半で)

ゲスト用SSID 特になし

ラベルには記載があるが初期設定では OFF。

ON にした場合、NW分離とセパレータが初期値で ON となるようになっている。

f:id:waraiotok0:20170829124220p:plain

 

NW分離

隔離機能は初期設定では OFF (「無線LANの設定」のスクショ参照)

つまり、異なる SSID 間での通信が許可されている。

ネットワーク分離機能は初期設定では OFF (「無線LANの設定」のスクショ参照)

つまり、異なる SSID 間での通信が許可されている。

セパレータ

初期値は OFF、つまり無線機器同士の東西通信は可能。

f:id:waraiotok0:20170829124353p:plain

 

 

SSID内分離は初期設定では OFF (「無線LANの設定」のスクショ参照)

つまり無線機器同士の東西通信は可能。

WPS

WPS は初期値で ON (初期の PIN はラベルにも記載あり) 

f:id:waraiotok0:20170829124415p:plain

AOSS も初期値で ON

f:id:waraiotok0:20170829124443p:plain

 

WPS は初期値で ON (初期の PIN はラベルにも記載あり)

f:id:waraiotok0:20170829124459p:plain

 

らくらく無線スタートも初期値で ON (っぽい、ON/OFF の設定どこ、、、)

f:id:waraiotok0:20170829124508p:plain

 

 

MACによるACL

初期値は OFF

MAC の接続制限は悪意あるユーザには意味がないので、これで問題なし。

f:id:waraiotok0:20170829124526p:plain

 

初期値は OFF (「無線LANの設定」のスクショ参照)

MAC の接続制限は悪意あるユーザには意味がないので、これで問題なし。

ファイアウォール

ファイアウォール機能

f:id:waraiotok0:20170829124544p:plain


IPフィルター

f:id:waraiotok0:20170829124558p:plain

 

VPNパススルー

f:id:waraiotok0:20170829124607p:plain

 

パケットフィルタ機能

f:id:waraiotok0:20170829124650p:plain

 

 

 

その他のセキュリティ設定

特になし

ちょっとした機能が実装済み。

f:id:waraiotok0:20170829124725p:plain

 

ファミリースマイル設定 (追加費用で利用可能なコンテンツフィルタ機能)

https://121ware.com/product/atermstation/special/siteblock/fs/

f:id:waraiotok0:20170829124755p:plain

 

FirmWare

更新は手動が初期設定、ぜひ初期は自動更新にして頂きたい。

 

f:id:waraiotok0:20170829124851p:plain

更新は手動が初期設定、自動化にしたいですね、やはり。

あと、時間の指定ができるのが好印象。

f:id:waraiotok0:20170829124913p:plain

 

番外編:

PSKが、、、

PSKがサマリにそのまま書いてある。設定画面では伏せ文字(●●●●●●)なのに。

例えば、ゲストに PSK を隠しつつ設定をしたとして、管理画面に admin/admin で

ログインしてしまえば、PSK が見えちゃうことになる。

f:id:waraiotok0:20170829124937p:plain

 

伏字にした方が良いと思うが、、、(「無線LANの設定」のスクショ参照)

一般ユーザの利用を考えた場合は、見えた方が良いのか? (セキュリティとUXのバランスとは)

いや、でも SOHO や店舗利用もあるし、やっぱり伏せた方が良いかと。

 

Aterm のAP でひっそり ON になっているステルスSSIDのWEPですが、一定の時間で PSK の解析は可能でした。SSID のステルス化は、悪意のあるユーザにはほぼ無意味。画面にあるようにすぐに ESSID は判明し、すでに利用中の端末がいる場合は、その通信から一定の IV を稼ぐことができれば OK 。

ただ、この WEP ですが、ユーザ自身も ON になっていることを認識していない可能性が高く、利用していない可能性が高いような気がします。つまり、PSK の解析のための IV を稼ぐためには自分で頑張る必要がある。とはいえ、ちょっと頑張れば IV を一定量確保できるので、現実的なレベルで時間を使えば踏み台としては使えることになる。

 

実際には利用されていない可能性も高いが、設置者が気づき難いのにリスクだけある、という点で、Aterm の初期設定は見直されることが望ましいと感じる。

 

f:id:waraiotok0:20170829123330p:plain

 

感想と提言

  • SSID 可能ならばランダムであるとよいが、一意にするため MAC アドレスにするのはリスクがあるので、UXを考えると現状の程度がバランスが良いと言えそう。
  • PSK はあまりに複雑にするとユーザが簡単なものに変えてしまう恐れがあるのが、小文字 + 数字(で 13 文字以上)がバランスがよさそう。
  • 管理コンソールのパスワードは、Aterm の実装が望ましい。一方で、パスワードには一定の制限(長さと種類)を設けるとさらに良い。
  • WEP に関しては、初期状態では OFF にすべき、特に Aterm の実装は見直した方が良い。War Driving の結果から、実際に気付かずに WEP が使える状態の環境が多そう。
  • NW分離やセパレータについては、初期状態で納得感がある(ゲスト用や WEP を使うときには、初期状態が ON になっている点等)
  • WPS やその他の自動接続設定は、セキュリティリスクを考えると必要な時にだけ ON すべき(APに物理的にアクセスできると誰でも使える)。 が、一般向けだとやはり初期値 OFF は難しいか(UXの悪化)。
  • 全体的にネットワークに接続済みの端末(の利用者)には悪意がない、といった実装になっているので、そこは実装を見直すべき。