model based intrusion detec3on system ids for smart meters
play

Model-based Intrusion Detec3on System (IDS) for Smart Meters - PowerPoint PPT Presentation

Model-based Intrusion Detec3on System (IDS) for Smart Meters Karthik Pa*abiraman and Farid Tabrizi Dependable Systems Lab University of Bri3sh Columbia


  1. Model-­‑based ¡Intrusion ¡Detec3on ¡ System ¡(IDS) ¡for ¡Smart ¡Meters ¡ ¡ Karthik ¡Pa*abiraman ¡ and ¡Farid ¡Tabrizi ¡ Dependable ¡Systems ¡Lab ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 1 ¡

  2. My ¡Research ¡ • Building ¡fault-­‑tolerant ¡and ¡secure ¡so9ware ¡systems ¡ • Applica>on-­‑level ¡fault ¡tolerance ¡ – SoFware ¡resilience ¡techniques ¡[DSN’14][DSN’13][DSN’12] ¡ – Web ¡applica3ons’ ¡reliability ¡[ICSE’14][ICSE’14][ESEM’13] ¡ • This ¡talk ¡ – Smart ¡meter ¡security ¡[HASE’14][WRAITS’12] ¡ 2 ¡

  3. Smart ¡Meter ¡Security ¡ ¡ • Smart ¡meter ¡A*acks ¡ – No ¡need ¡for ¡physical ¡presence ¡ – Hard ¡to ¡detect ¡by ¡inspec3on ¡or ¡tes3ng ¡ – AUacks ¡can ¡be ¡large-­‑scale ¡ Analog ¡Meter ¡ Smart ¡Meter ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 3 ¡

  4. Security ¡is ¡a ¡concern ¡ 4 ¡

  5. Security ¡is ¡a ¡concern ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 5 ¡

  6. Goal ¡ • Goal: ¡ Make ¡smart ¡meters ¡secure ¡ – Build ¡a ¡host-­‑based ¡intrusion ¡detec3on ¡system ¡(IDS) ¡ – Detect ¡aUacks ¡early ¡and ¡stop ¡them ¡ ¡ ¡ • Why ¡is ¡this ¡a ¡new ¡challenge? ¡ – Smart ¡meters ¡have ¡unique ¡constraints ¡that ¡make ¡ them ¡different ¡from ¡other ¡compu3ng ¡devices ¡ – Exis3ng ¡techniques ¡do ¡not ¡offer ¡comprehensive ¡ protec3on ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 6 ¡

  7. Outline ¡ • Mo3va3on ¡and ¡Goal ¡ • Prior ¡work ¡and ¡constraints ¡ • Our ¡approach ¡ • Evalua3on ¡ • Formal ¡modeling ¡ • Conclusion ¡ ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 7 ¡

  8. Prior ¡Work ¡on ¡Smart ¡Meter ¡Security ¡ • Network-­‑based ¡IDS ¡[Barbosa-­‑10][Berthier-­‑11] ¡ • Remote ¡AUesta3on ¡[LeMay-­‑09][OMAP-­‑11] ¡ Looks ¡Legit! ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 8 ¡

  9. Why ¡(bother ¡with) ¡Host-­‑based ¡IDS ¡? ¡ • Defense ¡in ¡depth ¡ – Complement ¡network-­‑based ¡IDS: ¡False ¡nega3ves ¡ – Can ¡detect ¡both ¡physical ¡and ¡network ¡aUacks ¡ ¡ • Remote ¡aUesta3on ¡techniques ¡ ¡do ¡not ¡cover ¡ aUacks ¡that ¡change ¡dynamic ¡execu3on ¡of ¡the ¡ meter ¡at ¡run3me, ¡e.g., ¡control-­‑flow ¡hijacking ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 9 ¡

  10. Constraints ¡of ¡smart ¡meters ¡ • Performance ¡ – Low-­‑cost ¡embedded ¡devices; ¡memory ¡constrained ¡ • No ¡false ¡posi>ves ¡ – False-­‑posi3ve ¡rate ¡of ¡1% ¡=> ¡10,000 ¡FPs ¡in ¡1 ¡million ¡meters ¡ • So9ware ¡modifica>on ¡ – SoFware ¡has ¡real-­‑3me ¡constraints; ¡no ¡modifica3ons ¡ ¡ • Low ¡cost ¡ – Rules ¡out ¡special ¡cryptographic ¡hardware ¡or ¡other ¡addi3ons ¡ • Coverage ¡of ¡unknown ¡a*acks ¡ – AUacks ¡are ¡rapidly ¡being ¡discovered; ¡zero-­‑day ¡aUacks ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 10 ¡

  11. Prior ¡Work ¡on ¡Host-­‑based ¡IDS ¡ System ¡ Perfor No ¡False ¡ No ¡So9ware ¡ Low ¡ Unknown ¡ mance ¡ Posi>ves ¡ Modifica>on ¡ Cost ¡ a*acks ¡ Dyck ¡ X ¡ X ¡ NDPDA ¡ X ¡ X ¡ X ¡ HMM/NN/ X ¡ X ¡ X ¡ X ¡ SVM ¡ Sta3s3cal ¡ X ¡ X ¡ X ¡ X ¡ Techniques ¡ No ¡exis3ng ¡host-­‑based ¡IDS ¡can ¡sa3sfy ¡all ¡five ¡ constraints: ¡Need ¡for ¡new ¡IDS ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 11 ¡

  12. Outline ¡ • Mo3va3on ¡and ¡Goal ¡ • Prior ¡work ¡and ¡constraints ¡ • Our ¡approach ¡ • Evalua3on ¡ • Formal ¡modeling ¡ • Conclusion ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 12 ¡

  13. Threat ¡model ¡ • Adversary: ¡wants ¡to ¡change ¡the ¡execu3on ¡ path ¡of ¡the ¡soFware ¡(in ¡subtle ¡ways) ¡ Write ¡ Mul3ply ¡ Read ¡ modified ¡data ¡ consump3on ¡ consump3on ¡ to ¡memory ¡ by ¡0.01 ¡ data ¡ Send ¡ Read ¡ consump3on ¡ Consump3on ¡ data ¡to ¡the ¡ data ¡ server ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 13 ¡

  14. Approach ¡ • Build ¡a ¡model ¡of ¡the ¡meter ¡soFware ¡ ¡ – Meters ¡are ¡designed ¡to ¡do ¡specific ¡tasks ¡ Syscall1 ¡ step1 ¡ step4 ¡ step2 ¡ step3 ¡ Syscall2 ¡ Abstract ¡Model ¡ Concrete ¡Model ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 14 ¡

  15. Approach ¡ Syscall1 ¡ step1 ¡ step4 ¡ step2 ¡ step3 ¡ Syscall2 ¡ Abstract ¡Model ¡ Concrete ¡Model ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 15 ¡

  16. Abstract ¡Model ¡ • Build ¡an ¡abstract ¡model ¡based ¡on ¡standard ¡ specifica3ons ¡of ¡smart ¡meter ¡func3onality ¡ Reading ¡data ¡ Calculate ¡ Pass ¡data ¡ ¡to ¡be ¡ from ¡sensors ¡ consump3on ¡ sent ¡to ¡server ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 16 ¡

  17. 17 ¡ 1-­‑Ini3aliza3on ¡ Controller ¡Processes ¡ 2-­‑Check ¡for ¡input ¡ 3-­‑Process ¡ commands ¡ ¡ commands ¡ Abstract ¡Model ¡ 6-­‑Pass ¡data ¡ ¡to ¡be ¡ 5-­‑Calculate ¡ 4-­‑Reading ¡data ¡from ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ sent ¡to ¡server ¡ consump3on ¡ sensors ¡ 8-­‑Check ¡for ¡ 7-­‑Receive ¡ Submit ¡ data ¡to ¡ consump3on ¡data ¡ Availability ¡of ¡the ¡ the ¡ from ¡controller ¡ server ¡ server? ¡ Communica>on ¡Processes ¡ 9-­‑Save ¡data ¡to ¡the ¡ Availabl physical ¡storage ¡ e? ¡ 10-­‑Read ¡data ¡from ¡ physical ¡storage ¡ 12-­‑Check ¡for ¡ 13-­‑Send ¡commands ¡ 11-­‑Submit ¡all ¡data ¡to ¡ incoming ¡commands ¡ to ¡the ¡controller ¡ the ¡server ¡ from ¡the ¡server ¡

  18. Approach ¡ Syscall1 ¡ step1 ¡ step4 ¡ step2 ¡ step3 ¡ Syscall2 ¡ Abstract ¡Model ¡ Concrete ¡Model ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 18 ¡

  19. Building ¡the ¡concrete ¡model ¡ • Use ¡a ¡tagging ¡system ¡ // ¡<network, ¡serial, ¡b2> ¡ SerialHandler() ¡ { ¡ … ¡ } ¡ • Features ¡ – Ease ¡of ¡use ¡ – Flexibility ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 19 ¡

  20. Concrete ¡Model ¡ 1-­‑Ini3alize ¡ segMeterIni3alize ¡ serialIni3alize ¡ setup ¡ 3-­‑Process ¡commands ¡ seg_commands.pars ¡ relayCommand ¡ 2-­‑Check ¡input ¡ ¡ commands ¡ serialHandler() ¡ parseCommand ¡ 6-­‑Pass ¡results ¡to ¡be ¡ ¡ 4-­‑Read ¡ 5-­‑Calculate ¡consump3on ¡ SubmiUed ¡to ¡server ¡ sensors ¡ segMeterHandler ¡ sendMessage ¡ collectChannelTransduced ¡ collectChannelRMS ¡ collectChannels ¡ powerOutputHandler ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 20 ¡

  21. Approach ¡ Syscall1 ¡ step1 ¡ step4 ¡ step2 ¡ step3 ¡ Syscall2 ¡ Abstract ¡Model ¡ Concrete ¡Model ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 21 ¡

  22. IDS ¡Genera3on: ¡AUack ¡Database ¡ • Build ¡the ¡IDS ¡based ¡on ¡system ¡calls ¡ 7-­‑Receive ¡ 8-­‑Check ¡for ¡ Submit ¡ consump3on ¡ data ¡to ¡ Availability ¡of ¡ data ¡from ¡ the ¡ the ¡server ¡ server? ¡ controller ¡ AUack ¡ Database ¡ Availa 9-­‑Save ¡data ¡to ¡ ble? ¡ the ¡physical ¡ storage ¡ 10-­‑Read ¡data ¡ from ¡physical ¡ storage ¡ University ¡of ¡Bri3sh ¡Columbia ¡(UBC) ¡ 22 ¡

  23. Example ¡AUack ¡ • Communica3on ¡interface ¡aUack ¡ Data ¡ spoofing ¡ 7-­‑Receive ¡ 6-­‑Pass ¡data ¡ ¡to ¡be ¡ consump3on ¡data ¡ sent ¡to ¡server ¡ from ¡controller ¡ Pass ¡data ¡to ¡be ¡sent ¡to ¡the ¡server ¡ Receiver ¡consump>on ¡data ¡from ¡the ¡ controller ¡ serial_handler(): ¡ Save ¡data ¡in ¡ ser2net ¡ sendMessage(): ¡ the ¡buffer ¡ 23 ¡

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend