Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[#IoTSecJP Tokyo #4] LoRaWANとセキュリティの話し/How Can I Hack LoRaWAN?

tokina (himitu)
September 15, 2018

[#IoTSecJP Tokyo #4] LoRaWANとセキュリティの話し/How Can I Hack LoRaWAN?

IoTSecJP Tokyo #4にてお話したスライドになります.
(後日一部更新しました)

tokina (himitu)

September 15, 2018
Tweet

More Decks by tokina (himitu)

Other Decks in Technology

Transcript

  1. ࠷ۙΑ͘ฉ͘-18"/ͱ-P3B8"/ *P5     ۙڑ཭ ௒ ௕ڑ཭ (

     )    km -18"/-PX1PXFS8JEF"SFB/FUXPSL ྫ -P3B8"/ɼ4JHGPYɽ-5..ɼ8J'J )BMMPX BI →Long Range WAN 5
  2. -P3B8"/ͷΠϝʔδ Server AP AP 6     

    (mobility)   LoRaWAN 10km
  3. ೔ຊͰͷݱঢ় nιϑτόϯΫɺ,%%* XJUI403"$0.ͳͲ͕αʔϏεΛఏڙ͍ͯ͠Δ pΩϟϦΞఏڙαʔϏεࣄۀ nి೾ͷ๏཯ r "3*# 45%5 p࠷৽͸W 

    u༗ྉͩΑʂʢࢲ͸ݚڀඅͰങͬͨΑʂʣ p-P3B8"/ͷѻ͍ɿ ಛఆখిྗແઢہɺ཮্Ҡಈہ pप೾਺d.)[ d.)[ uΞϯϥΠηϯεόϯυʢ໔ڐෆཁʣ pΩϟϦΞηϯεɿNTҎ্ɼVTҎ্ p࿈ଓૹ৴࣌ؒɿTɼNT pσϡʔςΟαΠΫϧɿͳ͠ɼTҎԼ ˠૹ৴Ͱ͖Δσʔλ͸਺CZUFd਺ेCZUF ch200kHz →Bandwidth125kHz *923.4MHz 20mW →   (GW ) 12
  4. -P3B8"/ 4QFDJGJDBUJPO n$MBTT pLoRaWANには「Class」という通信方法の概念がある u現在はClass Bがテスト実装段階(一応考慮はされている) n$MBTT" puplinkの通信タイミングはランダム = pureALOHA

    (unslotted ALOHA) pメッセージの到達性を高めるため連送を行う u同時に2つのメッセージを送信、受信ウィンドウを2つ開く 13 $MBTT ϊʔυͷಈ࡞ͳͲ ಛ௃ " • શσόΠε͕αϙʔτ͢Δ • ೚ҙͷλΠϛϯάͰ6QMJOL͕ൃੜ • ஗Ԇେ • ফඅిྗ௿ # • Ϗʔίϯૹ৴ͷͨΊͷΫϥε • ωοτϫʔΫओಋͷ௨৴͕Մೳ • %PXOMJOLʹରԠ $ • ड৴εϩοτΛৗʹ։͘ • ৗ࣌ిྗڙڅՄೳͳϊʔυΛ૝ఆ • ஗Ԇখ • ফඅిྗେ
  5. -P3B8"/ͷηΩϡϦςΟ جຊ nͲΜͳ߈ܸ͕͋Δʁ pEvasedropping/盗聴 uトラフィックを盗聴,他の攻撃の参考になったりする pReplay attack/リプレイ攻撃 u盗聴したデータをそのまま再送する.データの中身が不明でもOK. pMan in

    the middle attack/中間者攻撃 uやりとりの間に割り込んでデータを(場合によってはリアルタイムに改ざ んして)中継する pDenial of service/DoS攻撃 pKey cracking 14
  6. ηΩϡϦςΟͷ࿩ ʙωοτϫʔΫϨϕϧͷ࿩ʙ ࢀߟɿ -P3B8"/ 4QFDJGJDBTUJPO W BWBJMBCMFBUMPSBBMMJBODFPSH  SFG &T

    &FG WBO l-P3B8"/ WVMOFSBCJMJUZBOBMZTJT JO WBMJEBUJPOPGQPTTJCMFWVMOFSBCJMJUJFTJOUIF -P3B8"/ QSPUPDPMTQFDJGJDBUJPO z.BTUFSTUIFTJT 0QFO6OJWFSTJUFJU/FEFSMBOE  16 Attack to LoRaWAN in Network Level
  7. -P3B8"/ ."$ .FTTBHF 'PSNBU Preamble PHDR PHDR CRC PHY Payload

    CRC MHDR MAC Payload MIC FHDR FPort FRM Payload Dev Addr FCtrl FCnt FOpts Phy Phy Payload MAC Payload FHDR MH DR Dev Addr FCtrl FCnt FOpts FPort FRM Payload MIC 8 32 8 16 120 8 N 32 (bit) () 1'/     MAC %$ FPort 0x00 CID 0xXX Payload FRM Payload MIC&*!+0-#  Phy Payload 18  0-# "./,
  8. #FBDPO'SBNF'PSNBU n-P3B8"/ 4QFDJGJDBUJPOʹهࡌ pここにCRCの計算方法についても書かれている nϏʔίϯͷ࢓༷͸΍͸Γ֤࣮૷ʹґଘ͍ͯ͠Δ ˠͳΓ͢·͠͸༰қʁ RFU Time CRC GwSpecific

    CRC BCN Payload RFU... Reserved Future Used CRC... 24 32 8(16) 56 16 (bit) InfoDesc Latitude Longitude EU868 Frame format (AS923 ) 22
  9. ΍Γ͍ͨ͜ͱ )BDL3' 0/&Λ࢖ͬͯ-P3B8"/ͷ৘ใΛ೷͘ʂ n؀ڥ pHackRF ONE (2017 model) pLoRa mini-JP

    (ATmega328P MCU) p温度&湿度センサ (DHT11) pPC (OSX/Xubuntu 18.04 LTS on Mac) n༻ҙ͢Διϑτ pGNU Radio pGqrx prpp0/gr-lora (https://github.com/rpp0/gr-lora) u依存関係が大変 28 AP
  10. nӡ༻ϧʔϧ .)[ଳςϨϝʔλ༻ɺςϨίϯτϩʔϧ༻ٴͼσʔλ఻ૹ༻ແઢ ઃඋ "3*#45%5 p電波産業界で策定、全体は有料 p最新版(v1.2)は2018/01/2 u2012/02/14 v1.0 → 2017/10/17

    v1.1 .)[ଳʹ͍ͭͯఆΊͨ"3*#45%5 41 .)[ଳͷप೾਺ͷར༻͕޿͕Γɺ-18"ͳͲ༷ʑͳ௨৴χʔζʹ ରԠͨ͠ΞΫςΟϒܥখిྗແઢγεςϜʢ཮্ҠಈہɿN8ʣʣ ͷಋೖ͕ਐΉதͰɺ͜ͷΑ͏ͳγεςϜ͕ΑΓޮ཰తʹӡ༻Ͱ͖ΔΑ͏ɺ νϟωϧͷ֦ுٴͼؔ࿈ͷӡ༻نఆΛ௥Ճ͢Δ΋ͷͰ͋Δɻ
  11. n5IF5IJOHT/FUXPSL΁ͷ࣭໰ p2016/4に投稿されるも議論が活発に ~2017/3 6OJWFSTBM-P3B 8"/ HBUFXBZMJNJUBUJPOT CFDBVTFQIZTJDT 45 SF=7, size:

    25byte  PER(PacketerrorRate) "! Packet Error Rate 1 25byte     1,000  450 lost -> 45% error University of Antwerp in Belgium
  12. n-P3B NPEVMBUJPOͱؔ܎͕͋ΔΒ͍͠ nࢀߟʹͳΔಈը͕঺հ͞Ε͍ͯΔ phttps://youtu.be/T3dGLqZrjIQ?t=2122 4'ͱ"JSUJNFͷؔ܎ 47 ! TTN & 

    https://www.thethingsnetwork.org/forum/t/how-spreading-factor-influence-time-on-air/5068 #$   % "