MiTM MobileコンテストPHDays Vでモバむル通信を䞭断した方法





私たちはモバむル通信の盗聎 、 SMS傍受、加入者の代替 、SIMカヌドのハッキングの可胜性に関する研究を繰り返し公開しおいたすが 、倚くの読者にずっお、これらの物語は䟝然ずしお特別なサヌビスのみが所有する耇雑な魔法の分野に属したす。 今幎初めおPHDaysで開催されたMiTM Mobileコンテストにより、䌚議参加者は無料のハッキングプログラムを備えた300ルヌブルの携垯電話で䞊蚘の攻撃を簡単に実行できるこずがわかりたした。



競争条件ず技術



「MiTM Mobileネットワヌクのナヌザヌの䌚瀟の電話を手に入れたした。

DarkNetを通じお、次のような有甚な情報を受け取りたした。



  1. パブリッシュを受信するためのコヌドは、定期的に䌁業の䞻任䌚蚈士の番号-10000に送信されたす。
  2. 財務郚長はどこかに姿を消したした。数日前から誰も圌に連絡できず、電話はオフになっおいたすが、パスワヌドはただ圌に割り圓おられおいたす。
  3. 重芁な情報は、番号2000に電話をかけるこずで取埗できたすが、発信者の番号による蚱可はそこで蚭定されたす。 たた、監督の個人秘曞の電話番号は77777であるこずがわかりたした。おそらく圌はアクセスできたす。 ネットワヌクには埓業員が重芁な情報を受け取る他の番号がありたすが、残念ながら、それらは芋぀かりたせんでした。 忘れないでください。䌁業ネットワヌクでは、い぀でも個人情報を芋぀けるこずができたす。」


PHDays Vで開催されたMiTM Mobileコンテストの䞀環ずしお、CTF参加者にそのような玹介プレれンテヌションがほが提瀺されたした。



競争のために、モバむルオペレヌタの実際のむンフラストラクチャを展開したした。 これには、基地局、携垯電話、固定電話、SIMカヌドが含たれおいたした。 ご想像のずおり、MiTM Mobileずいう名前は偶然に遞ばれたわけではありたせん。私たちのネットワヌクの脆匱性を匷調したかったのです。 ネットワヌクのロゎはクラヌケンたたはほがで、セルタワヌを砎壊したした。



そのため、モバむルオペレヌタの倖郚属性により、すべおが明確になりたした。ネットワヌクの実装を怜蚎しおください。 UmTRXずいうシンプルな名前のデバむス補造元のWebサむトumtrx.org/hardwareは「鉄」゜リュヌションずしお機胜し、ネットワヌクのワむダレス郚分はそれに基づいお構築されたした。 盎接GSM機胜ずベヌスステヌションの機胜、぀たり゜フトりェア郚分は、Osmocom / OpenBTSプログラムスタックによっお実装されたした。







MiTMモバむルハヌト-UmTRX



簡単で迅速なオンラむン登録のために、SIMカヌドが泚文されたした。 MiTM Mobileネットワヌクの詳现がそれらに登録され、それに応じお、SIMカヌドのデヌタがネットワヌクに登録されたした。 空気を簡単に聎き、携垯電話ネットワヌクのプレヌダヌの生掻を楜にするために、暗号化はオフにされたしたA5 / 0。 SIMカヌドに加えお、Motorola C118電話ずUSB-UARTケヌブルCP2102が参加者に提䟛されたした。 これらすべおずosmocombbプログラムスタックにより、CTF参加者はブロヌドキャストを聎いたり、他のナヌザヌ向けのSMSを傍受したり、ネットワヌク䞊で別のナヌザヌに代わっお電話をかけたりするこずができたした。



各チヌムは、実隓のために、SIMカヌド、ケヌブル、電話、および組み立おられたosmocombbスタックを備えた仮想マシンの画像を自由に䜿甚できたした。







タスクの分析



たず、少しの理論









IMSI-これは、SIMカヌドに登録されおいるマゞックナンバヌです。 たずえば、250-01-250-これは囜コヌドロシア、01-挔算子コヌドMTS、-固有IDの圢匏です。 IMSIにより、加入者は事業者のネットワヌクで識別および承認されたす。



この堎合、sysmocom 901 SIMカヌド-囜コヌド、70-オペレヌタヌコヌド、0000005625-オペレヌタヌのネットワヌク内のサブスクラむバヌID図を参照。



芚えおおくべき2番目のこずMSISDN、携垯電話番号たずえば、+ 79171234567はSIMカヌドに保存されたせん。 オペレヌタヌのデヌタベヌスに保存されたす。 呌び出し䞭、基地局は、IMSI <-> MSISDN察応衚に埓っおこの番号を眮き換えたす実際のネットワヌクでは、これはMSC / VLR機胜です。 たたは眮換したせん匿名呌び出し。



TMSIは4バむトの䞀時的な識別子です。 承認埌にサブスクラむバヌに割り圓おられたす。



知識を歊噚に、継続したす。



osmocombbプログラムスタックを起動したす。 ここではすべおが簡単です。 ケヌブルをコンピュヌタヌに事前に接続し、仮想マシン内で転送したす。 デバむス/ dev / ttyUSB0が仮想マシンに衚瀺されるはずです。 次に、電源が入っおいない電話機をオヌディオゞャックを介しおケヌブルに接続したす。



2぀のコン゜ヌルを開きたす。 最初のコマンドを実行したす



#~/osmocom-bb-master/src/host/osmocon/osmocon -p /dev/ttyUSB0 -m c123xor -c ~/osmocom-bb-master/src/target/firmware/board/compal_e88/layer1.highram.bin
      
      





そしお、赀いボタンを抌しお電話をオンにしたす。 このコマンドを䜿甚しお、ファヌムりェアの電話ぞのダりンロヌドを開始するずずもに、゜ケットを開いお、プログラムを介しお電話ず通信したす。 これは、いわゆるレむダヌ1 OSIモデルです。 ネットワヌクずの物理的な盞互䜜甚を実装したす。







これは、電話にダりンロヌドした埌、コン゜ヌルにlayer1をほが発行するものですただし、これは興味がありたせん。



2番目のコン゜ヌルで、次のコマンドを実行したす。



 #~/osmocom-bb-sylvain/src/host/layer23/src/misc/ccch_scan -a 774 -i 127.0.0.1
      
      





このコマンドは、レむダヌ2-3 OSIモデルを実装したす。 ぀たり、Common Control ChannelCCCHパケットを怜玢するために空気を聎きたす。



-a 774-攟送䞭のARFCNを衚したす。 はい、はい、誰も私たちのオペレヌタヌが働いおいるチャンネルを探す必芁はありたせん。 あなたのためのすべお、芪愛なる参加者:)



-i 127.0.0.1は、パケットの送信先のむンタヌフェヌスです。







Wiresharkを実行したす。 ぀たり、必芁なパッケヌゞをSMSで収集し、TPDU / PDU圢匏を解析しお、すべおを読み取り可胜な圢匏で衚瀺したす。



最初のタスクでは、SMSをむンタヌセプトする必芁があるこずを芚えおいたす。 Wiresharkで衚瀺しやすいように、gsm_smsパケットにフィルタヌを蚭定しお、画面が詰たらないようにしたす。







攟送䞭のSMSが衚瀺されたす。 おめでずうございたす、あなたは最初のタスクを完了したした たた、珟圚PHDays Vを䜿甚しおいる堎合は、オン゚アでパブリッシャヌを受信するためのコヌドが蚘茉されたSMSを芋るこずができたす。 コヌドは、倜間でも5分ごずに2日間連続しお攟送されたした。



2番目のタスクでは、 layer1を実行する必芁もありたす たたは、最埌以降はレむダヌ1をオフにできたせん。



2番目のコン゜ヌルで、layer2-3を次のように実行したす



 #~/osmocom-bb-master/src/host/layer23/src/mobile/mobile -i 127.0.0.1
      
      





そしお、ここではすべおが簡単です。 モバむルアプリケヌションは、仮想電話の機胜を実装したす。 これらの機胜にアクセスするには、3番目のコン゜ヌルを開いお次を実行したす。



 $ telnet 127.0.0.1 4247
      
      





シスコのようなむンタヌフェむスがコン゜ヌルで開きたす。 詳现モヌドをオンにしたす。



 OsmocomBB> enable
      
      





次に、䜿甚可胜なコマンドをリストしたす。



 OsmocomBB# list
      
      





クロヌンチヌムは䜕をしおいるのだろうか。 圌女が圌女の名前を完党に守っおいるず誰が思ったでしょう このコマンドを䜿甚するず、サブスクラむバヌをネットワヌクに耇補できたす。 ヘルプからコマンドたで、TMSIを匕数ずしお䜿甚するこずがわかりたす。 被害者のTMSIを芋぀けお電話で眮き換えるこずができれば、元の加入者の代わりにネットワヌクに接続できたす。



䌚議䞭、ネットワヌク䞊にない番号にSMSを送信しようずしたした。 そしお、参加者がクロヌンコマンドのパラメヌタずしおベヌスステヌションから芁求されたTMSIを代甚するず掚枬した堎合、参加者は通貚のコヌドを含む次のフラグを受け取りたす。



 OsmocomBB# clone 1 5cce0f7f
      
      





そしお、加入者ぞの基地局の芁求を芋るのは非垞に簡単でした。 芁求Paging Requests Type 1呌び出しを行うずきのベヌスステヌションの芁求でWireshark gsmtapパケットを芋るこずができたした。







たたは、モバむルが実行されおいる2番目のコン゜ヌルで







TMSIを登録し、元の加入者向けのSMSを受け取りたす。



3番目のタスクに぀いおは、すでに十分な知識がありたす。 前のタスクず同様に、別のサブスクラむバヌになりすたす必芁がありたす。 私たちは圌の番号を知っおいたすが、圌のTMSIを知りたせん。 どうする 簡単です。SMSを送信するか、この加入者、぀たり番号77777に電話をかけるだけです。前の䟋のように、加入者77777ぞの基地局の芁求が衚瀺されたす。重芁な点別の電話から電話ずSMSを発信する必芁がありたすモトロヌラは、タヌゲット加入者宛おのベヌスステヌションブロヌドキャスト芁求を衚瀺できたせん。



次に、クロヌンコマンドを䜿甚しお、電話にTMSIを登録したす。そしお、切望されおいる番号に電話をかけたす。



 OsmocomBB# call 1 2000
      
      





次に、Motorolaを遞択しお、コヌドを聞きたす。 参加者がすべおを正しく行った堎合、コヌドが聞こえたす。 そうでなければ、圌らは冗談を聞くでしょう:)



特に、ネットワヌクには、新しい音声メッセヌゞが到着したずいうSMSメッセヌゞがありたした。 参加者があたりにも怠laでなく、デバむスの電話垳に入った堎合、ボむスメヌル番号が衚瀺されたす。 この番号に電話するこずで、むンサむダヌ情報-MiTM Mobileの株䟡の成長ず䞋萜に関するデヌタを聞くこずができたす。



4番目のタスクはGSM通信に盎接関係しおいたせんでしたが、ネットワヌクぞのアクセスに䜿甚される脆匱なSIMカヌドを䜿甚しおいたした。 電話に加えお、各チヌムには、招埅状「Welcome to PHDays V」を衚瀺するアプリケヌションがむンストヌルされたSIMカヌドが䞎えられたした。 脆匱なアプレットを怜玢するために、Lukas KuzmiakずKarsten NohlはSIMTesterナヌティリティを䜜成したした。 このナヌティリティの特城は、osmocom電話を介しお機胜するこずです。 SIMカヌドを電話に挿入し、コンピュヌタヌに接続しお怜玢を開始したす。 数分埌、取埗したデヌタを分析したす。







ブルヌトフォヌスキヌに十分な情報を開瀺する倚くのアプリケヌションに加えお、アクセスに秘密キヌを必芁ずしないアプリケヌションで、赀で慎重に匷調衚瀺されおいたす。 個別に分析したす。







SIMカヌド応答の最埌の2バむトはステヌタスバむトです。たずえば、0x9000はコマンドが正垞に完了したこずを意味したす。 この堎合、0x9124を取埗したす。これは、カヌドから返される36バむトがあるこずを意味したす。 プログラムコヌドを少し倉曎しお、どのようなデヌタかを芋おみたしょう。







デコヌドしお取埗したす



 >>> 'D0228103012100820281028D1704596F752061726520636C6F73652C2062616420434C419000'.decode('hex') '\xd0"\x81\x03\x01!\x00\x82\x02\x81\x02\x8d\x17\x04You are close, bad CLA\x90\x00'
      
      





バむナリSMSで送信される指瀺に぀いお、考えられるすべおのCLAずINSを゜ヌトし、フラグを取埗したす。







 >>> 'D0378103012100820281028D2C04596F757220666C61673A2035306634323865623762623163313234323231383333366435306133376239659000'.decode('hex') '\xd07\x81\x03\x01!\x00\x82\x02\x81\x02\x8d,\x04Your flag: 50f428eb7bb1c1242218336d50a37b9e\x90\x00'
      
      





それが課題のすべおです。



競争の勝者ず驚き



CTFチヌムだけでなく、PHDaysのすべおの蚪問者もMiTM Mobileコンテストに参加できたした。必芁なすべおの機噚ず仮想マシンが党員に提䟛されたした。 その結果、10人以䞊がCTFチヌムを陀いお競争に参加したした。



ただし、最初の日の半ばたでにSMSを傍受できたのは、競争に勝ったGleb Cherbovだけでした 。



2日目の初めに、 More Smoked Leet Chickenチヌムのみが3぀のタスクを完了したした。 4番目のタスクはCTF参加者のみが利甚できたしたが、誰も完了できたせんでした。



フォヌラムの蚪問者は、LTE、3Gの定期的な損倱に気付くこずがあり、GSM劚害装眮の゚リアに近づくずネットワヌクが完党に倱われるこずもありたした。







番号74957440144たたはAnonymousからテキスト「SMS_from_bank」たたはその他の「無害なスパム」を含むメッセヌゞを受信した人もいたした。 これは、MiTM Mobileセルラヌネットワヌクの運甚によるものです。



そしお、2日目の終わりたでに、䞀郚の「ラッキヌ」は次のメッセヌゞを受け取りたした。







このゞョヌクは、MiTM Mobileの動䜜ずは関係ありたせんが、基本的な安党芏則の順守を再び思い出させたす。 ペットの携垯電話を远跡したす。これにより、MosMetro_Freeネットワヌクが予期せず芋぀かり、接続できず、プログラムの矀れがトラップに陥りたす。 それらの䞀郚は、攻撃者が取埗した携垯電話番号を識別子ずしお䜿甚し、SMSゲヌトりェむを介しお、すべおの「幞運な人」ぞの郵送を手配したす。







PS MiTM Mobileに䌌たコンテストを開催したい方のために-ネットワヌクコンポヌネントに぀いおもう少し。



UmTRX自䜓はSDRSoftware Defined Radio、぀たり「単なるラゞオ」です。 すべおのセットアップ手順は、umtrx.orgたたはosmocom.orgにありたす。 UmTRX-UmDESKの既補の「箱入り」゜リュヌションに぀いおも蚀及できたす。すべおがすでにむンストヌルされおいたす。 マニュアルの構成を蚘入し、ブロヌドキャストを開始するだけで十分です。



osmocombbスタックがアセンブルされた完成したむメヌゞは、phdays.ru / ctf_mobile.7zにありたすVMWare 11が非垞に望たしいです。 実隓には、このアセンブリで十分です。 シムはオプションですが、電話ずUSB-UARTケヌブルが必芁です。



電話は、 bb.osmocom.org / trac / wiki / Hardware / Phonesのリストから取埗できたす。

ケヌブル bb.osmocom.org/trac/wiki/Hardware/SerialCable



そしお、はい、PL2303、FT232はほがどこでも芋぀けるこずができたす。 2.5 mmミニゞャックのはんだ付けは、これたでになく簡単になりたした。







Simsずケヌブルは、 shop.sysmocom.deで泚文できたす。



すなわち

USB-UARTCP2102 shop.sysmocom.de/products/cp2102-25

SIMカヌド shop.sysmocom.de/t/sim-card-related/sim-cards



電話は、Avito、地䞋道、たたは䞭囜で泚文できたす。発行䟡栌は玄300ルヌブル/パ゜コンです。







FairwavesUmTRX、UmDESK、UmROCKETなどを䜜っおいる人たちの人たちは、テストのために提䟛されたアドバむスず機噚に特別な感謝をしおいたす。 圌らは倧きな取匕をしたす Ivanに感謝したす。



All Articles