hacktricks/physical-attacks/firmware-analysis/README.md

266 lines
16 KiB
Markdown
Raw Normal View History

2024-02-11 02:13:58 +00:00
# Uchambuzi wa Firmware
2022-04-28 16:01:33 +00:00
<details>
2024-02-11 02:13:58 +00:00
<summary><strong>Jifunze kuhusu kudukua AWS kutoka mwanzo hadi kuwa bingwa na</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-11 02:13:58 +00:00
Njia nyingine za kusaidia HackTricks:
2022-04-28 16:01:33 +00:00
2024-02-11 02:13:58 +00:00
* Ikiwa unataka kuona **kampuni yako inatangazwa kwenye HackTricks** au **kupakua HackTricks kwa muundo wa PDF** Angalia [**MPANGO WA KUJIUNGA**](https://github.com/sponsors/carlospolop)!
* Pata [**swag rasmi ya PEASS & HackTricks**](https://peass.creator-spring.com)
* Gundua [**The PEASS Family**](https://opensea.io/collection/the-peass-family), mkusanyiko wetu wa [**NFTs**](https://opensea.io/collection/the-peass-family) ya kipekee
* **Jiunge na** 💬 [**Kikundi cha Discord**](https://discord.gg/hRep4RUj7f) au [**kikundi cha telegram**](https://t.me/peass) au **tufuate** kwenye **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Shiriki mbinu zako za kudukua kwa kuwasilisha PR kwa** [**HackTricks**](https://github.com/carlospolop/hacktricks) na [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repos za github.
2022-04-28 16:01:33 +00:00
</details>
2024-02-11 02:13:58 +00:00
## **Utangulizi**
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
Firmware ni programu muhimu ambayo inawezesha vifaa kufanya kazi kwa usahihi kwa kusimamia na kurahisisha mawasiliano kati ya sehemu za vifaa na programu ambayo watumiaji wanashirikiana nayo. Inahifadhiwa kwenye kumbukumbu ya kudumu, ikiruhusu kifaa kupata maagizo muhimu tangu wakati wa kuwasha, na kusababisha uzinduzi wa mfumo wa uendeshaji. Kuchunguza na kubadilisha firmware ni hatua muhimu katika kutambua udhaifu wa usalama.
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
## **Kukusanya Taarifa**
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
**Kukusanya taarifa** ni hatua muhimu ya awali katika kuelewa muundo wa kifaa na teknolojia inayotumia. Mchakato huu unahusisha kukusanya data kuhusu:
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
- Muundo wa CPU na mfumo wa uendeshaji unaotumia
- Maelezo ya bootloader
- Mpangilio wa vifaa na datasheets
- Takwimu za msingi za nambari na maeneo ya chanzo
- Maktaba za nje na aina za leseni
- Historia za sasisho na vyeti vya udhibiti
- Mchoro wa muundo na mchoro wa mzunguko
- Tathmini za usalama na udhaifu ulioainishwa
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
Kwa kusudi hili, zana za **open-source intelligence (OSINT)** ni muhimu, pamoja na uchambuzi wa vipengele vya programu zinazopatikana kupitia mchakato wa ukaguzi wa mwongozo na wa kiotomatiki. Zana kama [Coverity Scan](https://scan.coverity.com) na [Semmles LGTM](https://lgtm.com/#explore) zinatoa uchambuzi wa kiwango cha juu ambao unaweza kutumika kutambua masuala yanayowezekana.
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
## **Kupata Firmware**
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
Kupata firmware kunaweza kufanywa kupitia njia mbalimbali, kila moja ikiwa na kiwango chake cha ugumu:
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
- **Moja kwa moja** kutoka chanzo (watengenezaji, watengenezaji)
- **Kuijenga** kutoka kwa maelekezo yaliyotolewa
- **Kupakua** kutoka kwenye tovuti rasmi za msaada
- Kutumia **Google dork** kuangalia faili za firmware zilizohifadhiwa
- Kupata ufikiaji wa **hifadhi ya wingu** moja kwa moja, kwa kutumia zana kama [S3Scanner](https://github.com/sa7mon/S3Scanner)
- Kuingilia **sasisho** kupitia mbinu za man-in-the-middle
- **Kuondoa** kutoka kifaa kupitia uhusiano kama **UART**, **JTAG**, au **PICit**
- **Kuchunguza** ombi la sasisho ndani ya mawasiliano ya kifaa
- Kutambua na kutumia **vifaa vya sasisho vilivyowekwa kwa nguvu**
- **Kuchukua** kutoka kwa bootloader au mtandao
- **Kuondoa na kusoma** kichipu cha kuhifadhi, wakati njia zingine zote zimeshindwa, kwa kutumia zana sahihi za vifaa.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
## Kuchambua firmware
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Sasa **una firmware**, unahitaji kuchambua habari kuhusu hiyo ili ujue jinsi ya kuishughulikia. Zana tofauti unazoweza kutumia kwa hilo:
2022-02-23 15:32:10 +00:00
```bash
2024-02-11 02:13:58 +00:00
file <bin>
strings -n8 <bin>
2022-02-23 15:32:10 +00:00
strings -tx <bin> #print offsets in hex
2024-02-11 02:13:58 +00:00
hexdump -C -n 512 <bin> > hexdump.out
2022-02-23 15:32:10 +00:00
hexdump -C <bin> | head # might find signatures in header
fdisk -lu <bin> #lists a drives partition and filesystems if multiple
```
2024-02-11 02:13:58 +00:00
Ikiwa hutapata mengi na zana hizo, angalia **entropy** ya picha na `binwalk -E <bin>`, ikiwa entropy ni ndogo, basi haiwezekani kuwa imefichwa. Ikiwa entropy ni kubwa, inawezekana kuwa imefichwa (au imepakwa kwa njia fulani).
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Zaidi ya hayo, unaweza kutumia zana hizi kuondoa **faili zilizojumuishwa ndani ya firmware**:
2022-02-23 15:32:10 +00:00
2022-05-01 16:04:05 +00:00
{% content-ref url="../../forensics/basic-forensic-methodology/partitions-file-systems-carving/file-data-carving-recovery-tools.md" %}
[file-data-carving-recovery-tools.md](../../forensics/basic-forensic-methodology/partitions-file-systems-carving/file-data-carving-recovery-tools.md)
2022-02-23 15:32:10 +00:00
{% endcontent-ref %}
2024-02-11 02:13:58 +00:00
Au [**binvis.io**](https://binvis.io/#/) ([code](https://code.google.com/archive/p/binvis/)) kuangalia faili.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
### Kupata Mfumo wa Faili
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Kwa zana zilizotajwa hapo awali kama `binwalk -ev <bin>`, unapaswa kuweza **kuchimba mfumo wa faili**.\
Kawaida, binwalk huichimba ndani ya **folda iliyoitwa kama aina ya mfumo wa faili**, ambayo kawaida ni moja ya zifuatazo: squashfs, ubifs, romfs, rootfs, jffs2, yaffs2, cramfs, initramfs.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
#### Uchimbaji wa Mfumo wa Faili kwa Mikono
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Marafiki, binwalk **hawana herufi ya uchawi ya mfumo wa faili katika saini zao**. Katika kesi hizi, tumia binwalk ku **kupata nafasi ya mfumo wa faili na kuchimba mfumo wa faili uliopakwa kutoka kwenye faili ya binary na kuchimba mfumo wa faili kwa mikono** kulingana na aina yake kwa kutumia hatua zifuatazo.
2022-02-23 15:32:10 +00:00
```
$ binwalk DIR850L_REVB.bin
DECIMAL HEXADECIMAL DESCRIPTION
----------------------------------------------------------------------------- ---
0 0x0 DLOB firmware header, boot partition: """"dev=/dev/mtdblock/1""""
10380 0x288C LZMA compressed data, properties: 0x5D, dictionary size: 8388608 bytes, uncompressed size: 5213748 bytes
1704052 0x1A0074 PackImg section delimiter tag, little endian size: 32256 bytes; big endian size: 8257536 bytes
1704084 0x1A0094 Squashfs filesystem, little endian, version 4.0, compression:lzma, size: 8256900 bytes, 2688 inodes, blocksize: 131072 bytes, created: 2016-07-12 02:28:41
```
2024-02-11 02:13:58 +00:00
Chalaza amri ifuatayo ya **dd** ikichonga mfumo wa faili wa Squashfs.
2022-02-23 15:32:10 +00:00
```
2024-02-11 02:13:58 +00:00
$ dd if=DIR850L_REVB.bin bs=1 skip=1704084 of=dir.squashfs
2022-02-23 15:32:10 +00:00
8257536+0 records in
8257536+0 records out
8257536 bytes (8.3 MB, 7.9 MiB) copied, 12.5777 s, 657 kB/s
```
2024-02-11 02:13:58 +00:00
Kwa upande mwingine, amri ifuatayo inaweza pia kutekelezwa.
2022-02-23 15:32:10 +00:00
`$ dd if=DIR850L_REVB.bin bs=1 skip=$((0x1A0094)) of=dir.squashfs`
2024-02-11 02:13:58 +00:00
* Kwa squashfs (ilitumiwa katika mfano hapo juu)
2022-02-23 15:32:10 +00:00
`$ unsquashfs dir.squashfs`
2024-02-11 02:13:58 +00:00
Faili zitakuwa katika saraka ya "`squashfs-root`" baadaye.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
* Faili za kumbukumbu za CPIO
2022-02-23 15:32:10 +00:00
`$ cpio -ivd --no-absolute-filenames -F <bin>`
2024-02-11 02:13:58 +00:00
* Kwa mfumo wa jffs2
2022-02-23 15:32:10 +00:00
`$ jefferson rootfsfile.jffs2`
2024-02-11 02:13:58 +00:00
* Kwa mfumo wa ubifs na NAND flash
2022-02-23 15:32:10 +00:00
`$ ubireader_extract_images -u UBI -s <start_offset> <bin>`
`$ ubidump.py <bin>`
2024-02-11 02:13:58 +00:00
## Uchambuzi wa Firmware
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Baada ya kupata firmware, ni muhimu kuchambua kwa kina muundo wake na udhaifu wake. Mchakato huu unahusisha kutumia zana mbalimbali kuchambua na kutoa data muhimu kutoka kwenye picha ya firmware.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
### Zana za Uchambuzi wa Awali
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Seti ya amri zinapatikana kwa ukaguzi wa awali wa faili ya binary (inayojulikana kama `<bin>`). Amri hizi husaidia kutambua aina za faili, kutoa herufi, kuchambua data ya binary, na kuelewa maelezo ya kugawanya na mfumo wa faili:
2022-02-23 15:32:10 +00:00
```bash
2024-02-11 02:13:58 +00:00
file <bin>
strings -n8 <bin>
2024-02-08 21:36:35 +00:00
strings -tx <bin> #prints offsets in hexadecimal
2024-02-11 02:13:58 +00:00
hexdump -C -n 512 <bin> > hexdump.out
2024-02-08 21:36:35 +00:00
hexdump -C <bin> | head #useful for finding signatures in the header
fdisk -lu <bin> #lists partitions and filesystems, if there are multiple
2022-02-23 15:32:10 +00:00
```
2024-02-11 02:13:58 +00:00
Kuamua hali ya kusimbwa kwa picha, **entropy** inachunguzwa kwa kutumia `binwalk -E <bin>`. Entropy ndogo inaonyesha ukosefu wa kusimbwa, wakati entropy kubwa inaashiria uwezekano wa kusimbwa au kusagwa.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Kwa ajili ya kuchimbua **faili zilizojumuishwa**, zana na rasilimali kama **file-data-carving-recovery-tools** na hati ya **binvis.io** kwa ukaguzi wa faili zinapendekezwa.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
### Kuchimbua Mfumo wa Faili
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Kwa kutumia `binwalk -ev <bin>`, kwa kawaida unaweza kuchimbua mfumo wa faili, mara nyingi kwenye saraka iliyoitwa kwa jina la aina ya mfumo wa faili (k.m., squashfs, ubifs). Hata hivyo, wakati **binwalk** inashindwa kutambua aina ya mfumo wa faili kutokana na kuwepo kwa herufi za uchawi zilizokosekana, uchimbuzi wa mwongozo unahitajika. Hii inahusisha kutumia `binwalk` ili kupata mahali pa mfumo wa faili, kisha kutumia amri ya `dd` ili kuchimba mfumo wa faili:
2022-02-23 15:32:10 +00:00
```bash
2024-02-08 21:36:35 +00:00
$ binwalk DIR850L_REVB.bin
2024-02-11 02:13:58 +00:00
$ dd if=DIR850L_REVB.bin bs=1 skip=1704084 of=dir.squashfs
2022-02-23 15:32:10 +00:00
```
2024-02-11 02:13:58 +00:00
Baadaye, kulingana na aina ya mfumo wa faili (k.m., squashfs, cpio, jffs2, ubifs), amri tofauti hutumiwa kuchambua maudhui kwa mkono.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
### Uchambuzi wa Mfumo wa Faili
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Baada ya mfumo wa faili kuchambuliwa, utafutaji wa kasoro za usalama unaanza. Tahadhari inalipwa kwa daemons dhaifu za mtandao, vitambulisho vya uthibitishaji vilivyowekwa ngumu, vituo vya API, utendaji wa seva ya sasisho, nambari isiyokamilika, hati za kuanza, na programu zilizokamilishwa kwa uchambuzi nje ya mtandao.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
**Maeneo muhimu** na **vitengo** vya ukaguzi ni pamoja na:
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
- **etc/shadow** na **etc/passwd** kwa vitambulisho vya mtumiaji
- Vyeti vya SSL na funguo katika **etc/ssl**
- Faili za usanidi na hati za hatari za uwezekano
- Programu zilizojumuishwa kwa uchambuzi zaidi
- Seva za wavuti za kifaa cha IoT na programu zilizokamilishwa
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Zana kadhaa zinasaidia kugundua habari nyeti na kasoro za usalama ndani ya mfumo wa faili:
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
- [**LinPEAS**](https://github.com/carlospolop/PEASS-ng) na [**Firmwalker**](https://github.com/craigz28/firmwalker) kwa utafutaji wa habari nyeti
- [**The Firmware Analysis and Comparison Tool (FACT)**](https://github.com/fkie-cad/FACT\_core) kwa uchambuzi kamili wa firmware
- [**FwAnalyzer**](https://github.com/cruise-automation/fwanalyzer), [**ByteSweep**](https://gitlab.com/bytesweep/bytesweep), [**ByteSweep-go**](https://gitlab.com/bytesweep/bytesweep-go), na [**EMBA**](https://github.com/e-m-b-a/emba) kwa uchambuzi wa tuli na wa kudumu
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
### Ukaguzi wa Usalama kwenye Programu Zilizokamilishwa
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Nambari chanzo na programu zilizokamilishwa zilizopatikana kwenye mfumo wa faili lazima ziangaliwe kwa kasoro za usalama. Zana kama **checksec.sh** kwa programu za Unix na **PESecurity** kwa programu za Windows husaidia kutambua programu zisizolindwa ambazo zinaweza kudukuliwa.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
## Kuiga Firmware kwa Uchambuzi wa Kudumu
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Mchakato wa kuiga firmware unawezesha **uchambuzi wa kudumu** wa uendeshaji wa kifaa au programu binafsi. Njia hii inaweza kukabili changamoto za vifaa au utegemezi wa usanifu, lakini kuhamisha mfumo wa faili wa msingi au programu maalum kwa kifaa chenye usanifu na mwisho unaolingana, kama Raspberry Pi, au kwa mashine ya kawaida iliyoundwa mapema, inaweza kurahisisha majaribio zaidi.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
### Kuiga Programu Binafsi
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
Kwa kuchunguza programu moja, ni muhimu kutambua mwisho wa programu na usanifu wa CPU.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
#### Mfano na Usanifu wa MIPS
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Kuiga programu ya usanifu wa MIPS, mtu anaweza kutumia amri:
2024-02-08 21:36:35 +00:00
```bash
file ./squashfs-root/bin/busybox
```
2024-02-11 02:13:58 +00:00
Na kufunga zana za uigaji muundo zinazohitajika:
2024-02-08 21:36:35 +00:00
```bash
sudo apt-get install qemu qemu-user qemu-user-static qemu-system-arm qemu-system-mips qemu-system-x86 qemu-utils
```
2024-02-11 02:13:58 +00:00
Kwa MIPS (big-endian), `qemu-mips` hutumiwa, na kwa mipangilio midogo ya mwisho, `qemu-mipsel` ndiyo chaguo sahihi.
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
#### Uwakilishi wa Mimarobota wa ARM
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
Kwa mipangilio ya ARM, mchakato ni sawa, na emulator ya `qemu-arm` hutumiwa kwa uwakilishi.
2024-02-08 21:36:35 +00:00
2024-02-11 02:13:58 +00:00
### Uwakilishi Kamili wa Mfumo
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Zana kama [Firmadyne](https://github.com/firmadyne/firmadyne), [Firmware Analysis Toolkit](https://github.com/attify/firmware-analysis-toolkit), na zingine, hufanikisha uwakilishi kamili wa firmware, kwa kiotomatiki mchakato na kusaidia katika uchambuzi wa kina.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
## Uchambuzi wa Muda wa Uendeshaji katika Vitendo
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Katika hatua hii, mazingira halisi au yaliyowakilishwa ya kifaa hutumiwa kwa uchambuzi. Ni muhimu kuwa na ufikiaji wa kabati kwenye mfumo wa uendeshaji na mfumo wa faili. Uwakilishi huenda usiwe kamili katika kuiga mwingiliano wa vifaa, na hivyo kuhitaji kuanza upya kwa uwakilishi mara kwa mara. Uchambuzi unapaswa kuzingatia mfumo wa faili, kutumia kurasa za wavuti na huduma za mtandao zilizofichuliwa, na kuchunguza udhaifu wa bootloader. Vipimo vya ukamilifu wa firmware ni muhimu ili kutambua udhaifu wa mlango wa nyuma.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
## Mbinu za Uchambuzi wa Muda wa Uendeshaji
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Uchambuzi wa muda wa uendeshaji unahusisha kuingiliana na mchakato au faili katika mazingira yake ya uendeshaji, kwa kutumia zana kama gdb-multiarch, Frida, na Ghidra kwa kuweka alama za kusimamisha na kutambua udhaifu kupitia mbinu za fuzzing na zingine.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
## Ushambuliaji wa Faili na Uthibitisho wa Wazo
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Kuendeleza Wazo la Uthibitisho (PoC) kwa udhaifu uliogunduliwa kunahitaji uelewa wa kina wa muundo wa lengo na programu katika lugha za kiwango cha chini. Ulinzi wa faili wa muda wa uendeshaji katika mifumo iliyowekwa ni nadra, lakini wakati unapokuwepo, mbinu kama Return Oriented Programming (ROP) inaweza kuwa muhimu.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
## Mifumo ya Uendeshaji Tayari kwa Uchambuzi wa Firmware
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Mifumo ya uendeshaji kama [AttifyOS](https://github.com/adi0x90/attifyos) na [EmbedOS](https://github.com/scriptingxss/EmbedOS) hutoa mazingira yaliyowekwa tayari kwa ajili ya upimaji wa usalama wa firmware, ikiwa na zana muhimu.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
## Mifumo ya Uendeshaji Tayari kwa Uchambuzi wa Firmware
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
* [**AttifyOS**](https://github.com/adi0x90/attifyos): AttifyOS ni mfumo wa usambazaji uliokusudiwa kukusaidia kufanya tathmini ya usalama na upenyezaji wa vifaa vya Intaneti ya Vitu (IoT). Inakusaidia kuokoa muda kwa kutoa mazingira yaliyowekwa tayari na zana zote muhimu.
* [**EmbedOS**](https://github.com/scriptingxss/EmbedOS): Mfumo wa uendeshaji wa upimaji wa usalama wa vifaa vilivyowekwa kwenye Ubuntu 18.04 uliojaa zana za upimaji wa usalama wa firmware.
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
## Firmware Zenye Udhaifu kwa Mazoezi
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
Ili kufanya mazoezi ya kugundua udhaifu katika firmware, tumia miradi ifuatayo ya firmware yenye udhaifu kama mwanzo.
2022-02-23 15:32:10 +00:00
* OWASP IoTGoat
2024-02-11 02:13:58 +00:00
* [https://github.com/OWASP/IoTGoat](https://github.com/OWASP/IoTGoat)
2022-02-23 15:32:10 +00:00
* The Damn Vulnerable Router Firmware Project
2024-02-11 02:13:58 +00:00
* [https://github.com/praetorian-code/DVRF](https://github.com/praetorian-code/DVRF)
2022-02-23 15:32:10 +00:00
* Damn Vulnerable ARM Router (DVAR)
2024-02-11 02:13:58 +00:00
* [https://blog.exploitlab.net/2018/01/dvar-damn-vulnerable-arm-router.html](https://blog.exploitlab.net/2018/01/dvar-damn-vulnerable-arm-router.html)
2022-02-23 15:32:10 +00:00
* ARM-X
2024-02-11 02:13:58 +00:00
* [https://github.com/therealsaumil/armx#downloads](https://github.com/therealsaumil/armx#downloads)
2022-02-23 15:32:10 +00:00
* Azeria Labs VM 2.0
2024-02-11 02:13:58 +00:00
* [https://azeria-labs.com/lab-vm-2-0/](https://azeria-labs.com/lab-vm-2-0/)
2022-02-23 15:32:10 +00:00
* Damn Vulnerable IoT Device (DVID)
2024-02-11 02:13:58 +00:00
* [https://github.com/Vulcainreo/DVID](https://github.com/Vulcainreo/DVID)
2022-02-23 15:32:10 +00:00
2024-02-11 02:13:58 +00:00
## Marejeo
2022-02-23 15:59:03 +00:00
* [https://scriptingxss.gitbook.io/firmware-security-testing-methodology/](https://scriptingxss.gitbook.io/firmware-security-testing-methodology/)
* [Practical IoT Hacking: The Definitive Guide to Attacking the Internet of Things](https://www.amazon.co.uk/Practical-IoT-Hacking-F-Chantzis/dp/1718500904)
2024-02-11 02:13:58 +00:00
## Mafunzo na Cheti
2022-02-23 15:32:10 +00:00
* [https://www.attify-store.com/products/offensive-iot-exploitation](https://www.attify-store.com/products/offensive-iot-exploitation)
2022-04-28 16:01:33 +00:00
<details>
2024-02-11 02:13:58 +00:00
<summary><strong>Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-11 02:13:58 +00:00
Njia nyingine za kusaidia HackTricks:
2022-04-28 16:01:33 +00:00
2024-02-11 02:13:58 +00:00
* Ikiwa unataka kuona **kampuni yako ikitangazwa kwenye HackTricks** au **kupakua HackTricks kwa muundo wa PDF** Angalia [**MPANGO WA KUJIUNGA**](https://github.com/sponsors/carlospolop)!
* Pata [**swag rasmi wa PEASS & HackTricks**](https://peass.creator-spring.com)
* Gundua [**The PEASS Family**](https://opensea.io/collection/the-peass-family), mkusanyiko wetu wa [**NFTs**](https://opensea.io/collection/the-peass-family) za kipekee
* **Jiunge na** 💬 [**Kikundi cha Discord**](https://discord.gg/hRep4RUj7f) au **kikundi cha telegram**](https://t.me/peass) au **tufuate** kwenye **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Shiriki mbinu zako za kudukua kwa kuwasilisha PR kwa** [**HackTricks**](https://github.com/carlospolop/hacktricks) na [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>