Notice
Recent Posts
Recent Comments
Link
ยซ   2024/10   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
๊ด€๋ฆฌ ๋ฉ”๋‰ด

R136A1

IoT ํผ์ง• ๋Œ๋ ค๋ณด๊ธฐ ๋ณธ๋ฌธ

PROJECT/๐Ÿ–คFuzzing, IoT, ์ž๋™์ฐจ

IoT ํผ์ง• ๋Œ๋ ค๋ณด๊ธฐ

r136a1x27 2022. 8. 13. 23:00

CVE ๋ถ„์„ ํ•˜๋‹ค๊ฐ€ ์‹œ๊ฐ„์ด (์–ผ๋งˆ ์•ˆ๋‚จ์•˜๋Š”๋ฐ) ์˜ค๋ž˜ ๊ฑธ๋ฆด ๊ฒƒ ๊ฐ™์•„์„œ

์šฐ์„  ๋ญ๊ฐ€ ํ•„์š”ํ•œ์ง€ ๋ณด๋ ค๋ฉด ์‹ค์Šต๋ถ€ํ„ฐ ํ•ด๋ด์•ผ ํ• ๋“ฏ

cgi ๋ž‘ php์— ๋Œ€ํ•ด์„œ ๋Œ๋ ค๋ณด์ž

cgi๋„ ์›น ๋ฐ”์ด๋„ˆ๋ฆฌ๋ผ ์ง€๊ธˆ ๋‚ด๊ฐ€ ์“ฐ๊ณ ์žˆ๋Š” ์‹œ์Šคํ…œ ํผ์ €๋ณด๋‹ค ์›น ํผ์ €๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ๋” ์ž˜ Exploit ๋  ๊ฒƒ ๊ฐ™์€ ๋Š๋‚Œ์ด ๋“ฌ

 

๊ทผ๋ฐ dlink ๋ณด๋‹ˆ๊นŒ cgi๊ฐ€ ์—†๊ณ  php๋กœ๋งŒ ์ž‘์„ฑ๋˜์–ด์žˆ์Œ (ํ )

 

ํƒ€๊ฒŸ ์„ ์ •

[1] SetRouterSettings.php (CVE-2018-19986)

 

[2] SetAccessPointMode.php (CVE-2018-19987)

 

[3] SetClientInfoDemo.php (CVE-2018-19988)

๋Š” ์—†๊ณ  xml ํŒŒ์ผ๋งŒ ์žˆ์–ด์„œ ์ฐจ์„ ์ฑ…์œผ๋กœ SetClientInfo.php ์— ๋Œ€ํ•ด์„œ ๋Œ๋ ค๋ณด๊ธฐ๋กœ

 

๊ฒฝ๋กœ๋Š” ์…‹ ๋‹ค etc/templates/hnap ์•„๋ž˜

๋‚˜์˜ ์ ˆ๋Œ€๊ฒฝ๋กœ๋Š” /home/kali/honggfuzz/_DIR822B1_FW202KRb06.bin.extracted/squashfs-root/etc/templates/hnap

 

์ปค๋งจ๋“œ

./honggfuzz2 -i in -- ~/honggfuzz/qemu_mode/honggfuzz-qemu/x86_64-linux-user/qemu-x86_64 /home/kali/honggfuzz/_DIR822B1_FW202KRb06.bin.extracted/squashfs-root/etc/templates/hnap/SetRouterSettings.php  __FILE__

[1] ๊ฒฐ๊ณผ

๋ญ”๊ฐ€ ์•ˆ๋‚˜์˜ฌ ์‚˜...ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹

[2] ๊ฒฐ๊ณผ

์œ„์—์„œ ํŒŒ์ผ๋ช…๋งŒ ๋ฐ”๊พธ๋ฉด๋จ

[3] ๊ฒฐ๊ณผ

 


์›์ธ์ด ๋ญ˜๊นŒ....

https://bugs.php.net/bug.php?id=74145 xml ํŒŒ์ผ์„ ์‹œ๋“œ๋กœ ์ฃผ๊ธฐ? (์‹œ๋“œ ์„ค์ •ํ•˜๋Š” ์˜ต์…˜์ด ๋”ฐ๋กœ ์žˆ๋‚˜)

์‹œ๋“œ๋ฅผ aaa๋กœ๋งŒ ์ฃผ๋ฉด bufferoverflow๋งŒ ๋ชป์ฐพ๋“ฏ์ด?

 

๋™์ž‘ ์›๋ฆฌ๋ฅผ ํŒŒ์•…ํ•ด๋ด์•ผ ๋ฌธ์ œ์ ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์Œ

https://cpuu.postype.com/post/9145704 ์—ฌ๊ธฐ์— ๋‚˜์™€์žˆ๋Š” ์šฉ์–ด๋“ค์ด๋ž‘ ๊ณผ์ •๋ถ€ํ„ฐ ๋‹ค ์ดํ•ด๋ฅผ ํ•ด์•ผํ•  ๊ฒƒ ๊ฐ™์€

์ด๋ถ„๋„ 4์‹œ๊ฐ„์„ ๋Œ๋ ค๋„ ๋ชป์ฐพ์•˜๋‹ค๊ณ  ํ•จ

์‰˜ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋นŒ๋“œํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ธ์ง€, Sanitizer๋Š” ์–ด๋–ค ๊ฒƒ์ธ์ง€ ์˜ต์…˜๋ณ„๋กœ ๋ฌด์Šจ ํšจ๊ณผ๊ฐ€ ์žˆ๋Š”์ง€

honggfuzzer ์ž์ฒด์˜ ์˜ต์…˜๋„ ๊ณต๋ถ€ํ•ด๋ด์•ผํ•  ๊ฒƒ ๊ฐ™๊ณ  qemu ๋ชจ๋“œ๋Š” ์“ฐ๊ธด ์ผ๋Š”๋ฐ ์–ด๋–ป๊ฒŒ ํ•˜๋Š”๊ฑด์ง€

์ผ๋‹จ ์ด๋ก  ์กด๋‚˜ ๊ณต๋ถ€ํ•œ ๋‹ค์Œ์— ์ง€์—ฐ๋ฉ˜ํ† ๋‹˜ํ•œํ…Œ ์–ด๋–ป๊ฒŒ ๊ณต๋ถ€ํ•˜๋ฉด ์ข‹์„์ง€ ๊ฐœ๋…์ด ๋ฌด์—‡์ธ์ง€ ์—ฌ์ญค๋ด์•ผํ•  ๊ฒƒ ๊ฐ™์Œ

์ง€๊ธˆ ๊ฑฐ์˜ 1๋…„์งธ ํผ์ €๋ž‘ (์ž์ฃผ ๋ณด์ง„ ์•Š์•˜์ง€๋งŒ) ์–ผ๊ตด ๋งž๋Œ€๊ณ ์žˆ๋Š”๋ฐ ๊ฐ์ด 1๋„ ์•ˆ์˜ด

 

๊ฐœ๋… ๊ณต๋ถ€ํ•˜๊ธฐ

์•„์˜ˆ ํผ์ € ๋นŒ๋“œ๋ถ€ํ„ฐ...

sudo apt-get install binutils-dev libunwind-dev clang
make

์ปค๋งจ๋“œ๋ฅผ ๋ณด๋ฉด ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด honggfuzz๋Š” c์–ธ์–ด๋กœ ์ž‘์„ฑ๋จ

Makefile์„ ํ†ตํ•ด ์ž๋™์œผ๋กœ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์Œ

 

๊ทผ๋ฐ...AFL๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๊ฐœ๋… ๊ณต๋ถ€ํ•˜๊ณ  ๋‹ค๋ฅธ ๊ฑด ์–ด๋–ค ๊ฒŒ ๋‹ค๋ฅธ์ง€ ํ™•์ธํ•˜๋Š” ์‹์œผ๋กœ ๊ณต๋ถ€ํ•˜๋ฉด ํšจ์œจ์ ์ผ๋“ฏ

(AFL์ด ์ œ์ผ ์ž๋ฃŒ๊ฐ€ ๋งŽ์Œ)

 

https://android.googlesource.com/platform/external/honggfuzz/+/731711e426401d513200ff20459110730b0acc06/README.md 

https://bugs.php.net/bug.php?id=74194 

php-fuzzer USE_ZEND_ALLOC=1 ./php.71.3RC1 ./modify.crash.php 

php-fuzzer USE_ZEND_ALLOC=0 ./php.71.3RC1 ./modify.crash.php 

honggfuzz๊ฐ€ ์•„๋‹ˆ๋ผ ๋ณ„๋„์˜ ๋‹ค๋ฅธ ํผ์ €์ธ๊ฐ€?

 

rust๋Š” ๊ด€๋ จ ์ž๋ฃŒ๊ฐ€ ์žˆ๋Š”๋ฐ(honggfuzz-rs) php๋Š” ์—†๋Š”๊ฒƒ๊ฐ™์Œ

(์žˆ๋‹ค ํ•ด๋„ ์ž๋ฃŒ๊ฐ€ ์ „๋ฌดํ•˜๋‹ค์‹ถ์ด ์—†์–ด์„œ ๊ทธ๋ƒฅ ๋‹ค๋ฅธ fuzzer ์ฐพ๋Š”๊ฒŒ ๋น ๋ฅผ๋“ฏํ•จ)

https://www.wzdftpd.net/blog/tag/security.html

 

 - AFL ํผ์ € ๋งค๋‰ด์–ผ

๋ธ”๋ž™๋ฐ•์Šค ํ…Œ์ŠคํŒ… → qemu๋ชจ๋“œ

์ปค๋„์„ ํฌํ•จํ•œ ์ „์ฒด ์‹œ์Šคํ…œ์„ emulate ํ•˜์ง€ ์•Š๊ณ  ํ”„๋กœ์„ธ์Šค ๋‹จ์œ„๋งŒ emulateํ•˜๋ฉด์„œ ํผ์ง•์„ ์ง„ํ–‰

 

ํ™”์ดํŠธ๋ฐ•์Šค ํ…Œ์ŠคํŒ… → recomplile

๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ AFL์—์„œ ์ œ๊ณตํ•˜๋Š” ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์ด์šฉํ•ด ๋‹ค์‹œ ๋นŒ๋“œ - ์ปดํŒŒ์ผ ๋‹จ๊ณ„์—์„œ ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…

 

AFL ์ง€์› ๊ฐ€๋Šฅํ•œ ์–ธ์–ด, ์ปดํŒŒ์ผ๋Ÿฌ ๋”ฐ๋กœ ์žˆ์Œ - C ๊ณ„์—ด๋งŒ

๋ธ”๋ž™๋ฐ•์Šค๊ฐ€ ๋Š๋ฆผ - ์‹คํ–‰์‹œํ‚ค๊ณ  ์ฝ”๋“œ ์‚ฝ์ž…ํ•˜๊ณ  ํผ์ง•ํ•  ๋•Œ๋งˆ๋‹ค forkํ•˜๋‹ˆ๊นŒ..

 

ASAN(=Address Sanitizer)

C/C++๋กœ ์ œ์ž‘๋œ ํ”„๋กœ๊ทธ๋žจ์—์„œ ํ”„๋กœ๊ทธ๋žจ์ด ์ž˜๋ชป ์‚ฌ์šฉ๋˜์—ˆ์ง€๋งŒ ์—๋Ÿฌ๊ฐ€ ๋‚˜์ง€ ์•Š๋Š” ์ƒํ™ฉ์— ๋Œ€ํ•œ ์กฐ๊ฑด์„ ๊ฑธ์–ด์คŒ

ํ•ด๋‹น ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•˜๋ฉด ์˜๋„์ ์œผ๋กœ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€๋ฅผ ๋„์›Œ์ค€๋‹ค

์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ข…๋ฅ˜ ์žˆ์Œ...

AFL ๋‚ด์— ๋‚ด์žฅ -fsantize=address ํ•˜๋ฉด ASAN์œผ๋กœ

 

์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด ํ™”์ดํŠธ ๋ฐ•์Šค ํ…Œ์ŠคํŒ… ํผ์ง•

=> ์†Œ์Šค์ฝ”๋“œ ํ•„์š”, ์ปดํŒŒ์ผ ์˜ต์…˜ ์„ค์ •ํ•ด์„œ ์ปดํŒŒ์ผํ•˜๊ณ  ํผ์ง•

 

๊ธฐ์ดˆ ๊ฐœ๋…์„ ํ•™์Šตํ•˜๊ธฐ๊ฐ€ ํž˜๋“ค์–ด์„œ ๋„ˆ๋ฌด ๋‹ต๋‹ต ๐Ÿ˜ฅ ๋ˆ„๊ฐ€ ๊ฐ•์˜ํ•ด์คฌ์œผ๋ฉด ์ข‹๊ฒ ์Œ

IoT๋„ ์ž˜ ๋ชจ๋ฅด๊ณ , Fuzzing๋„ ์ž˜ ๋ชจ๋ฅด๋‹ˆ๊นŒ ๋” ๋ง‰๋ง‰...~

 

https://www.youtube.com/watch?v=4WKwdkD2EXQ ๊ธฐ์กด์— ์ฐธ๊ณ ํ•œ ์œ ํŠœ๋ธŒ๋„ C++ code์— ๋Œ€ํ•œ ๋‚ด์šฉ

 

 

https://forallsecure.com/blog/fuzz-in-your-language-fuzzer-or-architecture

https://gitlab.com/fuzzing/magma/-/releases ์ด๋Ÿฐ ๊ฒƒ๋„ ์žˆ์Œ

5๊ฐœ์˜ ํผ์ €๋ฅผ ํ•ฉ์ณ๋†“์€...

 

 

Comments