View the Index
Total Page:16
File Type:pdf, Size:1020Kb
INDEX Symbols & Numbers Adafruit FT232H Breakout, 401–402 * character, 255, 263 adb (Android Debug Bridge), 360, 402 8N1 UART configuration,158 adb logcat, 367–368 802.11 protocols, 288 adb pull command, 361 802.11w, 289 AddPortMapping command, 125–126, 130 addressing layer, UPnP, 119 address search macro, 204 A address space layout randomization, 345 AAAA records, 138–139 admin credentials, Netgear D6000, 213–214 A-ASSOCIATE abort message, 96 ADV_IND PDU type, 271 A-ASSOCIATE accept message, 96 ADV_NONCONN_IND PDU type, 271 A-ASSOCIATE reject message, 96 advanced persistent threat (APT) attacks, 26 A-ASSOCIATE request message, 96 adversaries, 6 C-ECHO requests dissector, building, aes128_cmac function, 325 101–105 AES 128-bit keys, 323, 325, 326 defining structure, 112–113 AFI (Application Family Identifier),244 overview, 96 -afre argument, 135–136 parsing responses, 113–114 aftermarket security, 5 structure of, 101–102 Aircrack-ng, 289, 300–301, 402 writing contexts, 110–111 Aireplay-ng, 290 ABP (Activation by Personalization), 324, Airmon-ng, 289–290, 297–298 326–327, 330–331 Airodump-ng, 290, 301 Abstract Syntax, 111 Akamai, 118 access bits, 251–252 Akerun Smart Lock Robot app for iOS, 357 access controls, testing, 49–50 alarms, jamming wireless, 375–379 access points (APs), 287 Alfa Atheros AWUS036NHA, 402 cracking WPA Enterprise, 304–305 altering RFID tags, 255–256 cracking WPA/WPA2, 299–300 Amazon S3 buckets, 209–210 general discussion, 287–288 Amcrest IP camera, 147–152 overview, 299 amplification attacks, 94 access port, 60 analysis phase, network protocol account privileges, testing, 51 inspections, 92–93 ACK spoofing, 331 Andriesse, Dennis, 218 Activation by Personalization (ABP), 324, Android apps. See also smart treadmills, 326–327, 330–331 attacking active reconnaissance, 43, 43–45 binary reversing, 362–363 active RFID technologies, 241–242 dynamic analysis, 363–367 active spidering, 48 extracting APK, 361 Activities, in Android apps, 361 MIFARE, attacking with, 256–257 activity tracking systems, 385 network traffic, intercepting and Adafruit CircuitPython examining, 367 setting up, 318–319 overview, 360 writing LoRa sniffer, 320–322 preparing test environment, 360–361 security controls, 339–341 500907.indb 415 1/4/21 3:50 PM Android apps, continued setting up, 170–172 side-channel leaks, 367–368 setting up controller-peripheral I2C static analysis, 361–362 bus architecture, 201–202 threats to, 337–338 Arduino SAM boards, 171 Android Debug Bridge (adb), 360, 402 Arduino Uno microcontroller, 198–202 AndroidManifest.xml file, 361, 365–366 A records, 138–140, 144 Android Open Source Project (AOSP), A-RELEASE request message, 96 386–387 A-RELEASE response message, 96 Android Package (APK) files, 360 ar parameter, 261–262 abusing local file managers to install, asset-centric threat model, 30 391–393 association attacks, 291–295 binary reversing, 362–363 Atheros AR7 devices, 225–226 extracting, 361 Atlasis, Antonios, 133 static analysis, 361–362 at parameter, 261–262 Android Studio IDE, 360 attacker-centric threat model, 31 Android Verified Boot,341 attack trees, 28–29 Android Virtual Device (AVD) Manager, 360 Attify Badge, 403 Animas OneTouch Ping insulin pump A-type messages, 96–97, 99 security issue, 11–12 authentication Announcing phase BLE, 282–283 ippserver, 137–138 MIFARE cards, 258–259 mDNS, 132 mobile apps, 340–341 antennas, RFID, 242–243 mutual, 94 Anti-collision loop command, 258–259 nested authentication attack, 374 anti-hacking laws, 12–13 web application testing, 49 "ANY" query, 134–135 authorization, testing, 49–50 AOSP (Android Open Source Project), AutoIP, 119 386–387 automatic device discovery, 145 APK files. See Android Package (APK) files Automatic Reference Counting (ARC), 346 Apktool, 361, 402 automating Apkx, 361 firmware analysis, 215–216 app directory, inspecting, 366 RFID attacks using Scripting Engine, AppEUI (application identifier), 325 263–264 AppKey, 323, 325 static analysis of application source application analysis approach, 210–211 code, 346, 361 Application Context, A-ASSOCIATE AVD (Android Virtual Device) Manager, 360 request message, 110–111 application entity title, 102 Application Family Identifier (AFI),244 B application identifier (AppEUI), 325 backdoor agent, 223–228 application layer, LoRaWAN, 324 Baksmali, 368–369 application logs, inspecting, 351–352 banner grabbing, 44 application mapping, 48 base station, 372 application server, 50, 309 battery drain attacks, 42 application signatures, 340 baud rate, 162–163, 317 application-specific attacks, LoRaWAN, 331 b command, 349 AppNonce, 326 beacon frames, 293 AppSKey, 323, 326 beacons, 270 APs. See access points (APs) Beagle I2C/SPI Protocol Analyzer, 403 APT (advanced persistent threat) attacks, 26 bed of nails process, 164 ARC (Automatic Reference Counting), 346 Bettercap, 276 Arduino, 402 discovering devices and listing coding target program in, 172–174 characteristics, 276–278 flashing and running program, 174–180 hacking BLE, 279–285 Arduino Integrated Development overview, 403 Environment (IDE), 170, 180 BinaryCookieReader, 350–351, 403 Heltec LoRa 32 development board, binary emulation, 216–217 setting up, 309–314 416 Index 500907.indb 416 1/4/21 3:50 PM binary reversing breakpoints in debugging, setting, 349 InsecureBankV2 app, 362–363 brokers, in publish-subscribe architecture, 73 OWASP iGoat app, 355–356 brute-force attack, 213–214 bin/passwd binary file, 213 cloning MIFARE Classic cards, Binwalk, 212, 219, 403 252–253 binwalk Nmap command, 70–71 preshared key attacks, 301 BIOS security testing, 41 on RFID reader authentication bit-flipping attacks, 327–330 control, 262–263 Black Magic Probe, 165 Wi-Fi Direct, 296–297 Black Pill (STM32F103C8T6) BSSID, 288 boot mode, selecting, 174–175 bufsiz variable, 173 coding target program in Arduino, built-in security for IoT devices, 5 172–174 Bundle container, 347 connecting to computer, 179–180 Burp Proxy Suite, 356–357 connecting USB to serial adapter, 178 Burp Suite, 404 debugging target, 181–188 Bus Blaster, 404 flashing and running Arduino Bus Pirate, 190 program, 174–180 attacking I2C with, 202–206 overview, 169–170, 412 communicating with SPI chip, 194–195 UART pins, identifying with logic overview, 190, 404 analyzer, 176 –177 reading memory chip contents, 196 uploading Arduino program, 175–176 BusyBox, 67 BladeRF, 403 busybox file,217 BLE (Bluetooth Low Energy). See Bluetooth BYPASS command, JTAG, 164 Low Energy (BLE) BLE CTF Infinity authentication, 282–283 C examining characteristics and CA (SSL certificate authority), 357 descriptors, 281–282 cameras, IP. See IP cameras getting started, 279–280 Capture the Flag (CTF). See BLE CTF overview, 278 Infinity setting up, 279 CatWAN USB Stick, 309, 404 spoofing MAC address, 283–285 turning into LoRa sniffer, 318–322 ble.enum command, 284 cbnz command, 185–186 ble.show command, 276 C-ECHO messages, 96–97 ble.write command, 278 C-ECHO requests dissector, building, BlinkM LED, 198–202, 404 101–105 Bluetooth Low Energy (BLE), 269. See also central device, 270 BLE CTF Infinity Certificate Transparency, 37 BlueZ, 273–274 CFAA (Computer Fraud and Abuse Act), configuring interfaces, 274–275 12–13 discovering devices, 275–278 characteristics, BLE, 272 GAP, 271–272 examining, 281–282 GATT, 272 listing, 275–278 general discussion, 270–272 char-read-hnd <handle> command, 282 hardware, 273 charset variable, 265 listing characteristics, 275–278 checkEmulatorStatus() function, 368–369 overview, 269–270 check_fwmode file, 71 packet structure, 271 Chip Select (CS), 191 BlueZ, 273–274 ChipWhisperer, 404 Bolshev, A., 367 chk command, 252–253 Bolt, Usain, 400 chmod a+x <script_name>.js command, 328 Bonjour, 138–139 chmod utility, 376 boot environment, security testing of, 41 Cipher-based Message Authentication Code boot modes, ST-Link programmer, 174–175 (CMAC), 325 boundary scan, 164 CIPO (Controller In, Peripheral Out), 191 breadboard, 169 CIRCUITPY drive, 319, 320 Index 417 500907.indb 417 1/4/21 3:50 PM CircuitPython, 405 credentials setting up, 318–319 finding in firmware configuration files, writing LoRa sniffer, 320–322 214–215 Cisco VoIP devices, imitating, 66–67 firmware update services classes, RFID tag, 243 vulnerabilities, 233–234 classes.dex file, 361 WS-Discovery attacks, 153 Client, WS-Discovery, 145–146 Credentials.plist file, 345 client code, firmware update mechanisms crib dragging, 331 for, 229–232 Cross-Site Request Forgery (CSRF) client impersonation attacks, 94 attacks, 49 clients, enumerating and installing, 90 cryptographic keys, 8 client-side controls, 48–49 CS (Chip Select), 191 cloning RFID tags CSRF (Cross-Site Request Forgery) high-frequency, 250–254 attacks, 49 of keylock system, 372–375 CTF. See BLE CTF Infinity low-frequency, 249 CubicSDR, 376–378, 405 cloud testing, 54 cyclic redundancy checks (CRCs), 243, Clutch, 344, 405 313, 324 CMAC (Cipher-based Message Cydia Impactor, 344 Authentication Code), 325 cmd struct, 85 Code of Practice, UK, 14 D code.py file, 319, 320 Dalvik Executable (DEX) file formats, 361 com.android.insecureBankv2.PostLogin file, 368 Damn Vulnerable ARM Router (DVAR), 235 combinator attack, 214 Damn Vulnerable IoT Device (DVID), 235 composition of IoT devices, 6 Darkside attacks, 373–374 Computer Fraud and Abuse Act (CFAA), Dashboard APK, 397–398, 400 12–13 databases of apps, inspecting, 366–367 config_load "upnpd" command, 123–124 data bits, UART, 158 configuration files Data container, 347 finding credentials in firmware, data encryption, testing, 53 214–215 data link layer, 131 OpenOCD