แƒกแƒแƒฎแƒšแƒ˜แƒก แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜แƒก แƒจแƒ”แƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒœแƒŸแƒ˜แƒœแƒ”แƒ แƒ˜แƒ binwalk-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒ”แƒœแƒ“แƒแƒ‘แƒ˜แƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒแƒก?

แƒกแƒแƒฎแƒšแƒ˜แƒก แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜แƒก แƒจแƒ”แƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒœแƒŸแƒ˜แƒœแƒ”แƒ แƒ˜แƒ binwalk-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒ”แƒœแƒ“แƒแƒ‘แƒ˜แƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒแƒก?

แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ“แƒฆแƒ˜แƒก แƒฌแƒ˜แƒœ แƒ’แƒแƒ“แƒแƒ•แƒฌแƒงแƒ•แƒ˜แƒขแƒ” แƒจแƒ”แƒ›แƒ”แƒชแƒ•แƒแƒšแƒ แƒฉแƒ”แƒ›แƒ˜ แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ binwalk-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—.

แƒ›แƒ” แƒ—แƒ•แƒ˜แƒ—แƒแƒœ แƒ•แƒ˜แƒงแƒ˜แƒ“แƒ” TP-Link Archer C7 แƒกแƒแƒฎแƒšแƒ˜แƒก แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜. แƒแƒ  แƒแƒ แƒ˜แƒก แƒกแƒแƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒกแƒแƒ™แƒ›แƒแƒ แƒ˜แƒกแƒ˜แƒ แƒฉแƒ”แƒ›แƒ˜ แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒงแƒแƒ•แƒ”แƒšแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒชแƒ แƒแƒฎแƒแƒš แƒ แƒแƒฃแƒขแƒ”แƒ แƒก แƒ•แƒงแƒ˜แƒ“แƒฃแƒšแƒแƒ‘, แƒ•แƒแƒงแƒ”แƒœแƒ”แƒ‘ openwrt. แฒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก? แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ”แƒกแƒ˜, แƒ›แƒฌแƒแƒ แƒ›แƒแƒ”แƒ‘แƒšแƒ”แƒ‘แƒก แƒ“แƒ˜แƒ“แƒแƒ“ แƒแƒ  แƒแƒ˜แƒœแƒขแƒ”แƒ แƒ”แƒกแƒ”แƒ‘แƒ— แƒ—แƒแƒ•แƒ˜แƒแƒœแƒ—แƒ˜ แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒขแƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ แƒ“แƒ แƒ“แƒ แƒแƒ—แƒ แƒ’แƒแƒœแƒ›แƒแƒ•แƒšแƒแƒ‘แƒแƒจแƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ แƒ›แƒแƒซแƒ•แƒ”แƒšแƒ“แƒ”แƒ‘แƒ, แƒฉแƒœแƒ“แƒ”แƒ‘แƒ แƒ“แƒแƒฃแƒชแƒ•แƒ”แƒšแƒแƒ‘แƒ แƒ“แƒ แƒ.แƒจ., แƒ–แƒแƒ’แƒแƒ“แƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ’แƒ”แƒกแƒ›แƒ˜แƒ— แƒ˜แƒ“แƒ”แƒ. แƒแƒ›แƒ˜แƒขแƒแƒ›, แƒ›แƒ” แƒ›แƒ˜แƒ แƒฉแƒ”แƒ•แƒœแƒ˜แƒ OpenWRT firmware, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ™แƒแƒ แƒ’แƒแƒ“ แƒแƒ แƒ˜แƒก แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒšแƒ˜ แƒฆแƒ˜แƒ แƒฌแƒงแƒแƒ แƒแƒก แƒกแƒแƒ–แƒแƒ’แƒแƒ“แƒแƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ .

แƒ›แƒ” แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒแƒ“แƒ›แƒแƒ•แƒฌแƒ”แƒ แƒ” OpenWRT แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ— firmware-แƒ˜แƒก แƒฃแƒแƒฎแƒšแƒ”แƒกแƒ˜ แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒฉแƒ”แƒ›แƒ˜ แƒแƒฎแƒแƒšแƒ˜ Archer C7-แƒ˜แƒก แƒฅแƒ•แƒ”แƒจ แƒแƒคแƒ˜แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒ•แƒ”แƒ‘แƒกแƒแƒ˜แƒขแƒ˜แƒ“แƒแƒœ แƒ“แƒ แƒ’แƒแƒ“แƒแƒ•แƒฌแƒงแƒ•แƒ˜แƒขแƒ” แƒ›แƒ˜แƒกแƒ˜ แƒ’แƒแƒแƒœแƒแƒšแƒ˜แƒ–แƒ”แƒ‘แƒ. แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ’แƒแƒกแƒแƒ แƒ—แƒแƒ‘แƒแƒ“ แƒ“แƒ แƒ‘แƒ˜แƒœแƒ•แƒแƒ™แƒ–แƒ” แƒกแƒแƒฃแƒ‘แƒ แƒ˜แƒกแƒแƒก.

แƒ แƒ แƒแƒ แƒ˜แƒก binwalk?

Binwalk แƒแƒ แƒ˜แƒก แƒฆแƒ˜แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒ›แƒ”แƒœแƒขแƒ˜ แƒแƒœแƒแƒšแƒ˜แƒ–แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒกแƒแƒžแƒ˜แƒ แƒ˜แƒกแƒžแƒ˜แƒ แƒ แƒ˜แƒœแƒŸแƒ˜แƒœแƒ”แƒ แƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒ™แƒ แƒ”แƒ˜แƒ’ แƒฐแƒ”แƒคแƒœแƒ”แƒ แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  2010 แƒฌแƒ”แƒšแƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜ binwalk-แƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒกแƒ™แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒ firmware แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒžแƒแƒ•แƒœแƒ, แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜แƒก แƒ˜แƒ“แƒ”แƒœแƒขแƒ˜แƒคแƒ˜แƒชแƒ˜แƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒ, แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ“แƒ˜ แƒ™แƒแƒ“แƒ˜, แƒจแƒ”แƒ™แƒฃแƒ›แƒจแƒฃแƒšแƒ˜ แƒแƒ แƒฅแƒ˜แƒ•แƒ”แƒ‘แƒ˜, แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ”แƒ‘แƒ˜, แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒ˜, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ JPEG แƒ“แƒ PDF แƒ“แƒ แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒกแƒฎแƒ•แƒ.

แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— binwalk แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒจแƒ”แƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ—แƒ แƒ’แƒแƒ˜แƒ’แƒแƒ—, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒ’แƒ˜. แƒ›แƒแƒซแƒ”แƒ‘แƒœแƒ”แƒ— แƒ‘แƒ˜แƒœแƒแƒ แƒฃแƒšแƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒ“แƒแƒฃแƒชแƒ•แƒ”แƒšแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒแƒ›แƒแƒ˜แƒฆแƒ”แƒ— แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ›แƒแƒซแƒ”แƒ‘แƒœแƒ”แƒ— แƒฃแƒ™แƒแƒœแƒ แƒ™แƒแƒ แƒ”แƒ‘แƒ˜ แƒแƒœ แƒชแƒ˜แƒคแƒ แƒฃแƒšแƒ˜ แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜. แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒžแƒแƒ•แƒแƒ— opcodes แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒแƒ›แƒแƒ˜แƒฆแƒแƒ— แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜ แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒžแƒแƒ แƒแƒšแƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒกแƒแƒซแƒ”แƒ‘แƒœแƒแƒ“ (passwd, shadow แƒ“แƒ แƒ.แƒจ.) แƒ“แƒ แƒกแƒชแƒแƒ“แƒแƒ— แƒžแƒแƒ แƒแƒšแƒ˜แƒก แƒฐแƒ”แƒจแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒขแƒ”แƒฎแƒ•แƒ. แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒแƒ— แƒแƒ แƒแƒ‘แƒ˜แƒ—แƒ˜ แƒแƒœแƒแƒšแƒ˜แƒ–แƒ˜ แƒแƒ  แƒแƒœ แƒ›แƒ”แƒข แƒคแƒแƒ˜แƒšแƒก แƒจแƒแƒ แƒ˜แƒก. แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒแƒ— แƒ”แƒœแƒขแƒ แƒแƒžแƒ˜แƒ˜แƒก แƒแƒœแƒแƒšแƒ˜แƒ–แƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ–แƒ”, แƒ แƒแƒ—แƒ แƒ›แƒแƒซแƒ”แƒ‘แƒœแƒแƒ— แƒจแƒ”แƒ™แƒฃแƒ›แƒจแƒฃแƒšแƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒแƒœ แƒ“แƒแƒจแƒ˜แƒคแƒ แƒฃแƒšแƒ˜ แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ”แƒ‘แƒ˜. แƒ”แƒก แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒฌแƒงแƒแƒ แƒแƒก แƒ™แƒแƒ“แƒ–แƒ” แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”.

แƒ–แƒแƒ’แƒแƒ“แƒแƒ“ แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ แƒแƒช แƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒแƒ แƒ˜แƒก :)

แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก binwalk?

Binwalk-แƒ˜แƒก แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜ แƒ›แƒแƒฎแƒแƒกแƒ˜แƒแƒ—แƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ›แƒ˜แƒกแƒ˜ แƒฎแƒ”แƒšแƒ›แƒแƒฌแƒ”แƒ แƒ˜แƒก แƒกแƒ™แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒ. Binwalk-แƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒกแƒ™แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒ firmware-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒฉแƒแƒจแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒขแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒกแƒ แƒ“แƒ แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒกแƒแƒซแƒ”แƒ‘แƒœแƒแƒ“.

แƒ˜แƒชแƒ˜แƒ— แƒ—แƒฃ แƒแƒ แƒ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒฎแƒแƒ–แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ file?

file /bin/bash
/bin/bash: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 3.2.0, BuildID[sha1]=12f73d7a8e226c663034529c8dd20efec22dde54, stripped

แƒ’แƒฃแƒœแƒ“แƒ˜ fileแƒฃแƒงแƒฃแƒ แƒ”แƒ‘แƒก แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒกแƒแƒ—แƒแƒฃแƒ แƒก แƒ“แƒ แƒ”แƒซแƒ”แƒ‘แƒก แƒฎแƒ”แƒšแƒ›แƒแƒฌแƒ”แƒ แƒแƒก (แƒฏแƒแƒ“แƒแƒกแƒœแƒฃแƒ  แƒœแƒแƒ›แƒ”แƒ แƒก) แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒขแƒ˜แƒžแƒ˜แƒก แƒ“แƒแƒกแƒแƒ“แƒ’แƒ”แƒœแƒแƒ“. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ—แƒฃ แƒคแƒแƒ˜แƒšแƒ˜ แƒ˜แƒฌแƒงแƒ”แƒ‘แƒ แƒ‘แƒแƒ˜แƒขแƒ”แƒ‘แƒ˜แƒก แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒแƒ‘แƒ˜แƒ— 0x89 0x50 0x4E 0x47 0x0D 0x0A 0x1A 0x0Aแƒ›แƒแƒœ แƒ˜แƒชแƒ˜แƒก, แƒ แƒแƒ› แƒ”แƒก แƒแƒ แƒ˜แƒก PNG แƒคแƒแƒ˜แƒšแƒ˜. แƒฉแƒแƒ แƒ—แƒฃแƒšแƒ˜แƒ แƒ•แƒ˜แƒ™แƒ˜แƒžแƒ”แƒ“แƒ˜แƒ แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒกแƒแƒ”แƒ แƒ—แƒ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒแƒฌแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ.

Binwalk แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ˜แƒ›แƒแƒ•แƒ” แƒ’แƒ–แƒ˜แƒ—. แƒ›แƒแƒ’แƒ แƒแƒ› แƒ˜แƒ›แƒ˜แƒก แƒœแƒแƒชแƒ•แƒšแƒแƒ“, แƒ แƒแƒ› แƒ”แƒซแƒ”แƒ‘แƒแƒก แƒฎแƒ”แƒšแƒ›แƒแƒฌแƒ”แƒ แƒ”แƒ‘แƒ˜ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒ“แƒแƒกแƒแƒฌแƒงแƒ˜แƒกแƒจแƒ˜, binwalk แƒ“แƒแƒแƒกแƒ™แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒก แƒ›แƒ—แƒ”แƒš แƒคแƒแƒ˜แƒšแƒก. แƒ’แƒแƒ แƒ“แƒ แƒแƒ›แƒ˜แƒกแƒ, binwalk-แƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒกแƒฃแƒ แƒแƒ—แƒ–แƒ” แƒœแƒแƒžแƒแƒ•แƒœแƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒ.

แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒ›แƒ”แƒœแƒขแƒ”แƒ‘แƒ˜ file ะธ binwalk แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒ libmagic แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒแƒฌแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ˜แƒ“แƒ”แƒœแƒขแƒ˜แƒคแƒ˜แƒชแƒ˜แƒ แƒ”แƒ‘แƒ. แƒ›แƒแƒ’แƒ แƒแƒ› binwalk แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก แƒฏแƒแƒ“แƒแƒกแƒœแƒฃแƒ แƒ˜ แƒฎแƒ”แƒšแƒ›แƒแƒฌแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ›แƒแƒœแƒแƒ—แƒ•แƒแƒšแƒก แƒจแƒ”แƒ™แƒฃแƒ›แƒจแƒฃแƒšแƒ˜/zipped แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก, แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒกแƒแƒ—แƒแƒฃแƒ แƒ”แƒ‘แƒ˜แƒก, Linux-แƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ”แƒ‘แƒ˜แƒก, แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜แƒก, แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ.แƒจ.

แฒ›แƒแƒ“แƒ˜ แƒ’แƒแƒ•แƒ”แƒ แƒ—แƒแƒ—?

Binwalk-แƒ˜แƒก แƒ›แƒแƒœแƒขแƒแƒŸแƒ˜

Binwalk แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒšแƒ˜แƒ แƒ›แƒ แƒแƒ•แƒแƒš แƒžแƒšแƒแƒขแƒคแƒแƒ แƒ›แƒแƒ–แƒ”, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก Linux, OSX, FreeBSD แƒ“แƒ Windows.

Binwalk-แƒ˜แƒก แƒฃแƒแƒฎแƒšแƒ”แƒกแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ”แƒ— แƒกแƒแƒฌแƒงแƒ˜แƒกแƒ˜ แƒ™แƒแƒ“แƒ˜ แƒ“แƒ แƒ›แƒ˜แƒฐแƒงแƒ”แƒ•แƒ˜ แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ แƒแƒœ แƒกแƒฌแƒ แƒแƒคแƒ˜ แƒกแƒแƒฎแƒ”แƒšแƒ›แƒซแƒฆแƒ•แƒแƒœแƒ”แƒšแƒ, แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒ•แƒ”แƒ‘แƒกแƒแƒ˜แƒขแƒ–แƒ”.

Binwalk-แƒก แƒแƒฅแƒ•แƒก แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜:

$ binwalk

Binwalk v2.2.0
Craig Heffner, ReFirmLabs
https://github.com/ReFirmLabs/binwalk

Usage: binwalk [OPTIONS] [FILE1] [FILE2] [FILE3] ...

Signature Scan Options:
    -B, --signature              Scan target file(s) for common file signatures
    -R, --raw=<str>              Scan target file(s) for the specified sequence of bytes
    -A, --opcodes                Scan target file(s) for common executable opcode signatures
    -m, --magic=<file>           Specify a custom magic file to use
    -b, --dumb                   Disable smart signature keywords
    -I, --invalid                Show results marked as invalid
    -x, --exclude=<str>          Exclude results that match <str>
    -y, --include=<str>          Only show results that match <str>

Extraction Options:
    -e, --extract                Automatically extract known file types
    -D, --dd=<type:ext:cmd>      Extract <type> signatures, give the files an extension of <ext>, and execute <cmd>
    -M, --matryoshka             Recursively scan extracted files
    -d, --depth=<int>            Limit matryoshka recursion depth (default: 8 levels deep)
    -C, --directory=<str>        Extract files/folders to a custom directory (default: current working directory)
    -j, --size=<int>             Limit the size of each extracted file
    -n, --count=<int>            Limit the number of extracted files
    -r, --rm                     Delete carved files after extraction
    -z, --carve                  Carve data from files, but don't execute extraction utilities
    -V, --subdirs                Extract into sub-directories named by the offset

Entropy Options:
    -E, --entropy                Calculate file entropy
    -F, --fast                   Use faster, but less detailed, entropy analysis
    -J, --save                   Save plot as a PNG
    -Q, --nlegend                Omit the legend from the entropy plot graph
    -N, --nplot                  Do not generate an entropy plot graph
    -H, --high=<float>           Set the rising edge entropy trigger threshold (default: 0.95)
    -L, --low=<float>            Set the falling edge entropy trigger threshold (default: 0.85)

Binary Diffing Options:
    -W, --hexdump                Perform a hexdump / diff of a file or files
    -G, --green                  Only show lines containing bytes that are the same among all files
    -i, --red                    Only show lines containing bytes that are different among all files
    -U, --blue                   Only show lines containing bytes that are different among some files
    -u, --similar                Only display lines that are the same between all files
    -w, --terse                  Diff all files, but only display a hex dump of the first file

Raw Compression Options:
    -X, --deflate                Scan for raw deflate compression streams
    -Z, --lzma                   Scan for raw LZMA compression streams
    -P, --partial                Perform a superficial, but faster, scan
    -S, --stop                   Stop after the first result

General Options:
    -l, --length=<int>           Number of bytes to scan
    -o, --offset=<int>           Start scan at this file offset
    -O, --base=<int>             Add a base address to all printed offsets
    -K, --block=<int>            Set file block size
    -g, --swap=<int>             Reverse every n bytes before scanning
    -f, --log=<file>             Log results to file
    -c, --csv                    Log results to file in CSV format
    -t, --term                   Format output to fit the terminal window
    -q, --quiet                  Suppress output to stdout
    -v, --verbose                Enable verbose output
    -h, --help                   Show help output
    -a, --finclude=<str>         Only scan files whose names match this regex
    -p, --fexclude=<str>         Do not scan files whose names match this regex
    -s, --status=<int>           Enable the status server on the specified port

แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ™แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒ

แƒ“แƒแƒ•แƒ˜แƒฌแƒงแƒแƒ— แƒกแƒฃแƒ แƒแƒ—แƒ˜แƒก แƒจแƒ˜แƒ’แƒœแƒ˜แƒ— แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒฎแƒ”แƒšแƒ›แƒแƒฌแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒซแƒ˜แƒ”แƒ‘แƒ˜แƒ— (แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒกแƒแƒ˜แƒขแƒ˜แƒ“แƒแƒœ TP-LINK).

แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒ แƒ—แƒแƒ‘แƒ แƒซแƒแƒšแƒ --signature แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒ—:

$ binwalk --signature --term archer-c7.bin

DECIMAL       HEXADECIMAL     DESCRIPTION
------------------------------------------------------------------------------------------
21876         0x5574          U-Boot version string, "U-Boot 1.1.4-g4480d5f9-dirty (May
                              20 2019 - 18:45:16)"
21940         0x55B4          CRC32 polynomial table, big endian
23232         0x5AC0          uImage header, header size: 64 bytes, header CRC:
                              0x386C2BD5, created: 2019-05-20 10:45:17, image size:
                              41162 bytes, Data Address: 0x80010000, Entry Point:
                              0x80010000, data CRC: 0xC9CD1E38, OS: Linux, CPU: MIPS,
                              image type: Firmware Image, compression type: lzma, image
                              name: "u-boot image"
23296         0x5B00          LZMA compressed data, properties: 0x5D, dictionary size:
                              8388608 bytes, uncompressed size: 97476 bytes
64968         0xFDC8          XML document, version: "1.0"
78448         0x13270         uImage header, header size: 64 bytes, header CRC:
                              0x78A267FF, created: 2019-07-26 07:46:14, image size:
                              1088500 bytes, Data Address: 0x80060000, Entry Point:
                              0x80060000, data CRC: 0xBB9D4F94, OS: Linux, CPU: MIPS,
                              image type: Multi-File Image, compression type: lzma,
                              image name: "MIPS OpenWrt Linux-3.3.8"
78520         0x132B8         LZMA compressed data, properties: 0x6D, dictionary size:
                              8388608 bytes, uncompressed size: 3164228 bytes
1167013       0x11CEA5        Squashfs filesystem, little endian, version 4.0,
                              compression:xz, size: 14388306 bytes, 2541 inodes,
                              blocksize: 65536 bytes, created: 2019-07-26 07:51:38
15555328      0xED5B00        gzip compressed data, from Unix, last modified: 2019-07-26
                              07:51:41

แƒแƒฎแƒšแƒ แƒฉแƒ•แƒ”แƒœ แƒ’แƒ•แƒแƒฅแƒ•แƒก แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ แƒแƒ› แƒกแƒฃแƒ แƒแƒ—แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘.

แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒฌแƒงแƒแƒšแƒฅแƒ•แƒ”แƒจแƒ แƒœแƒแƒ•แƒ˜ แƒ แƒแƒ’แƒแƒ แƒช แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ•แƒ˜ (แƒกแƒฃแƒ แƒแƒ—แƒ˜แƒก แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜ แƒ–แƒ” 0x5AC0 แƒ“แƒ แƒจแƒ”แƒ™แƒฃแƒ›แƒจแƒฃแƒšแƒ˜ แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ˜ 0x5B00). 0x13270-แƒ–แƒ” uImage แƒกแƒแƒ—แƒแƒฃแƒ แƒ–แƒ” แƒ“แƒแƒงแƒ แƒ“แƒœแƒแƒ‘แƒ˜แƒ—, แƒฉแƒ•แƒ”แƒœ แƒ•แƒ˜แƒชแƒ˜แƒ—, แƒ แƒแƒ› แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ˜แƒก แƒแƒ แƒฅแƒ˜แƒขแƒ”แƒฅแƒขแƒฃแƒ แƒ แƒแƒ แƒ˜แƒก MIPS แƒ“แƒ Linux-แƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒแƒ แƒ˜แƒก แƒ•แƒ”แƒ แƒกแƒ˜แƒ 3.3.8. แƒ“แƒ แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ–แƒ” แƒœแƒแƒžแƒแƒ•แƒœแƒ˜ แƒกแƒฃแƒ แƒแƒ—แƒ˜แƒก แƒกแƒแƒคแƒฃแƒซแƒ•แƒ”แƒšแƒ–แƒ” 0x11CEA5, แƒฉแƒ•แƒ”แƒœ แƒแƒ›แƒแƒก แƒ•แƒฎแƒ”แƒ“แƒแƒ•แƒ— rootfs แƒแƒ แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ squashfs.

แƒแƒฎแƒšแƒ แƒ›แƒแƒ“แƒ˜แƒ— แƒแƒ›แƒแƒ•แƒ˜แƒฆแƒแƒ— แƒฉแƒแƒ›แƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ”แƒšแƒ˜ (U-Boot) แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— dd:

$ dd if=archer-c7.bin of=u-boot.bin.lzma bs=1 skip=23296 count=41162
41162+0 records in
41162+0 records out
41162 bytes (41 kB, 40 KiB) copied, 0,0939608 s, 438 kB/s

แƒ•แƒ˜แƒœแƒแƒ˜แƒ“แƒแƒœ แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒจแƒ”แƒ™แƒฃแƒ›แƒจแƒฃแƒšแƒ˜แƒ LZMA-แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒฉแƒ•แƒ”แƒœ แƒ’แƒ•แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ›แƒ˜แƒกแƒ˜ แƒ“แƒ”แƒ™แƒแƒ›แƒžแƒ แƒ”แƒกแƒ˜แƒ:

$ unlzma u-boot.bin.lzma

แƒแƒฎแƒšแƒ แƒฉแƒ•แƒ”แƒœ แƒ’แƒ•แƒแƒฅแƒ•แƒก U-Boot แƒกแƒฃแƒ แƒแƒ—แƒ˜:

$ ls -l u-boot.bin
-rw-rw-r-- 1 sprado sprado 97476 Fev  5 08:48 u-boot.bin

แƒ แƒแƒช แƒจแƒ”แƒ”แƒฎแƒ”แƒ‘แƒ แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒžแƒแƒ•แƒœแƒแƒก bootargs?

$ strings u-boot.bin | grep bootargs
bootargs
bootargs=console=ttyS0,115200 board=AP152 rootfstype=squashfs init=/etc/preinit mtdparts=spi0.0:128k(factory-uboot),192k(u-boot),64k(ART),1536k(uImage),14464k@0x1e0000(rootfs) mem=128M

U-Boot Environment Variable bootargs แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒšแƒ˜แƒœแƒฃแƒฅแƒกแƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒจแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ“แƒแƒกแƒแƒชแƒ”แƒ›แƒแƒ“. แƒ“แƒ แƒ–แƒ”แƒ›แƒแƒแƒฆแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ˜แƒ“แƒแƒœ แƒ’แƒแƒ›แƒแƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ”, แƒฉแƒ•แƒ”แƒœ แƒฃแƒ™แƒ”แƒ— แƒ’แƒแƒ•แƒ˜แƒ’แƒ”แƒ— แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ˜แƒก แƒคแƒšแƒ”แƒจ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘.

แƒ แƒแƒช แƒจแƒ”แƒ”แƒฎแƒ”แƒ‘แƒ Linux-แƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒแƒก?

$ dd if=archer-c7.bin of=uImage bs=1 skip=78448 count=1088572
1088572+0 records in
1088572+0 records out
1088572 bytes (1,1 MB, 1,0 MiB) copied, 1,68628 s, 646 kB/s

แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒจแƒ”แƒ•แƒแƒ›แƒแƒฌแƒ›แƒแƒ—, แƒ แƒแƒ› แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒฌแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒ˜แƒฅแƒœแƒ แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— file:

$ file uImage
uImage: u-boot legacy uImage, MIPS OpenWrt Linux-3.3.8, Linux/MIPS, Multi-File Image (lzma), 1088500 bytes, Fri Jul 26 07:46:14 2019, Load Address: 0x80060000, Entry Point: 0x80060000, Header CRC: 0x78A267FF, Data CRC: 0xBB9D4F94

uImage แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ˜ แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒแƒ“ Linux-แƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ˜แƒ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜แƒ—. แƒ›แƒแƒ“แƒ˜แƒ— แƒฌแƒแƒ•แƒจแƒแƒšแƒแƒ— แƒ”แƒก แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜, แƒ แƒแƒ› แƒ›แƒ˜แƒ•แƒ˜แƒฆแƒแƒ— Linux แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒกแƒฃแƒ แƒแƒ—แƒ˜:

$ dd if=uImage of=Image.lzma bs=1 skip=72
1088500+0 records in
1088500+0 records out
1088500 bytes (1,1 MB, 1,0 MiB) copied, 1,65603 s, 657 kB/s

แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒจแƒ”แƒ™แƒฃแƒ›แƒจแƒฃแƒšแƒ˜แƒ, แƒแƒกแƒ” แƒ แƒแƒ›, แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒ•แƒฎแƒกแƒœแƒแƒ— แƒ˜แƒ’แƒ˜:

$ unlzma Image.lzma

แƒแƒฎแƒšแƒ แƒฉแƒ•แƒ”แƒœ แƒ’แƒ•แƒแƒฅแƒ•แƒก Linux แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ˜:

$ ls -la Image
-rw-rw-r-- 1 sprado sprado 3164228 Fev  5 10:51 Image

แƒ แƒ แƒ•แƒฃแƒงแƒแƒ— แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒก? แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒฉแƒแƒ•แƒแƒขแƒแƒ แƒแƒ— แƒกแƒ˜แƒ›แƒ”แƒ‘แƒ˜แƒแƒœแƒ˜ แƒซแƒ˜แƒ”แƒ‘แƒ แƒกแƒฃแƒ แƒแƒ—แƒ–แƒ” แƒ“แƒ แƒ•แƒ˜แƒžแƒแƒ•แƒแƒ— Linux-แƒ˜แƒก แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ•แƒ”แƒ แƒกแƒ˜แƒ แƒ“แƒ แƒ’แƒแƒ•แƒ”แƒชแƒœแƒแƒ— แƒ˜แƒ› แƒ’แƒแƒ แƒ”แƒ›แƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“:

$ strings Image | grep "Linux version"
Linux version 3.3.8 (leo@leo-MS-7529) (gcc version 4.6.3 20120201 (prerelease) (Linaro GCC 4.6-2012.02) ) #1 Mon May 20 18:53:02 CST 2019

แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› firmware แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒ“แƒ แƒ’แƒแƒกแƒฃแƒš แƒฌแƒ”แƒšแƒก (2019), แƒ แƒแƒ’แƒแƒ แƒช แƒ›แƒ” แƒ•แƒฌแƒ”แƒ  แƒแƒ› แƒกแƒขแƒแƒขแƒ˜แƒแƒก, แƒ˜แƒก แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก Linux kernel-แƒ˜แƒก แƒซแƒ•แƒ”แƒš แƒ•แƒ”แƒ แƒกแƒ˜แƒแƒก (3.3.8), แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒ“แƒ 2012 แƒฌแƒ”แƒšแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ˜แƒšแƒ˜แƒ GCC-แƒ˜แƒก (4.6) แƒซแƒแƒšแƒ˜แƒแƒœ แƒซแƒ•แƒ”แƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒ—, แƒแƒกแƒ”แƒ•แƒ” 2012 แƒฌแƒšแƒ˜แƒ“แƒแƒœ. !
(แƒ“แƒแƒแƒฎ. แƒ—แƒแƒ แƒ’แƒ›แƒแƒœแƒ˜. แƒฏแƒ”แƒ  แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒœแƒ“แƒแƒ‘แƒ˜แƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒขแƒแƒ แƒ”แƒ‘แƒก แƒแƒคแƒ˜แƒกแƒจแƒ˜ แƒ“แƒ แƒกแƒแƒฎแƒšแƒจแƒ˜?)

แƒแƒคแƒชแƒ˜แƒ˜แƒ— --opcodes แƒฉแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— binwalk แƒ›แƒแƒœแƒฅแƒแƒœแƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒกแƒแƒซแƒ”แƒ‘แƒœแƒแƒ“ แƒ“แƒ แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ˜แƒก แƒแƒ แƒฅแƒ˜แƒขแƒ”แƒฅแƒขแƒฃแƒ แƒ˜แƒก แƒ“แƒแƒกแƒแƒ“แƒ’แƒ”แƒœแƒแƒ“:

$ binwalk --opcodes Image
DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
2400          0x960           MIPS instructions, function epilogue
2572          0xA0C           MIPS instructions, function epilogue
2828          0xB0C           MIPS instructions, function epilogue

แƒ แƒแƒช แƒจแƒ”แƒ”แƒฎแƒ”แƒ‘แƒ root แƒคแƒแƒ˜แƒšแƒฃแƒ  แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก? แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒฎแƒ”แƒšแƒ˜แƒ— แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒชแƒ•แƒšแƒแƒ“, แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ”แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ˜ binwalk --extract:

$ binwalk --extract --quiet archer-c7.bin

แƒกแƒ แƒฃแƒšแƒ˜ root แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒแƒ›แƒแƒฆแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒฅแƒ•แƒ”แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜:

$ cd _archer-c7.bin.extracted/squashfs-root/

$ ls
bin  dev  etc  lib  mnt  overlay  proc  rom  root  sbin  sys  tmp  usr  var  www

$ cat etc/banner
     MM           NM                    MMMMMMM          M       M
   $MMMMM        MMMMM                MMMMMMMMMMM      MMM     MMM
  MMMMMMMM     MM MMMMM.              MMMMM:MMMMMM:   MMMM   MMMMM
MMMM= MMMMMM  MMM   MMMM       MMMMM   MMMM  MMMMMM   MMMM  MMMMM'
MMMM=  MMMMM MMMM    MM       MMMMM    MMMM    MMMM   MMMMNMMMMM
MMMM=   MMMM  MMMMM          MMMMM     MMMM    MMMM   MMMMMMMM
MMMM=   MMMM   MMMMMM       MMMMM      MMMM    MMMM   MMMMMMMMM
MMMM=   MMMM     MMMMM,    NMMMMMMMM   MMMM    MMMM   MMMMMMMMMMM
MMMM=   MMMM      MMMMMM   MMMMMMMM    MMMM    MMMM   MMMM  MMMMMM
MMMM=   MMMM   MM    MMMM    MMMM      MMMM    MMMM   MMMM    MMMM
MMMM$ ,MMMMM  MMMMM  MMMM    MMM       MMMM   MMMMM   MMMM    MMMM
  MMMMMMM:      MMMMMMM     M         MMMMMMMMMMMM  MMMMMMM MMMMMMM
    MMMMMM       MMMMN     M           MMMMMMMMM      MMMM    MMMM
     MMMM          M                    MMMMMMM        M       M
       M
 ---------------------------------------------------------------
   For those about to rock... (%C, %R)
 ---------------------------------------------------------------

แƒแƒฎแƒšแƒ แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ.

แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ›แƒแƒซแƒ”แƒ‘แƒœแƒแƒ— แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜, แƒžแƒแƒ แƒแƒšแƒ˜แƒก แƒฐแƒ”แƒจแƒ”แƒ‘แƒ˜, แƒ™แƒ แƒ˜แƒžแƒขแƒแƒ’แƒ แƒแƒคแƒ˜แƒฃแƒšแƒ˜ แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒชแƒ˜แƒคแƒ แƒฃแƒšแƒ˜ แƒกแƒ”แƒ แƒ—แƒ˜แƒคแƒ˜แƒ™แƒแƒขแƒ”แƒ‘แƒ˜. แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒแƒ•แƒแƒแƒœแƒแƒšแƒ˜แƒ–แƒแƒ— แƒ‘แƒ˜แƒœแƒแƒ แƒฃแƒšแƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ˜แƒแƒ’แƒœแƒแƒกแƒขแƒ˜แƒ™แƒ แƒ“แƒ แƒกแƒ˜แƒกแƒฃแƒกแƒขแƒ”แƒ”แƒ‘แƒ˜.

แƒ”แƒ แƒ—แƒแƒ“ แƒ•แƒ˜แƒœ ะธ chroot แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ’แƒแƒ•แƒฃแƒจแƒ•แƒแƒ— (แƒ›แƒ˜แƒ‘แƒแƒซแƒแƒ—) แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ“แƒ˜:

$ ls
bin  dev  etc  lib  mnt  overlay  proc  rom  root  sbin  sys  tmp  usr  var  www

$ cp /usr/bin/qemu-mips-static .

$ sudo chroot . ./qemu-mips-static bin/busybox
BusyBox v1.19.4 (2019-05-20 18:13:49 CST) multi-call binary.
Copyright (C) 1998-2011 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.

Usage: busybox [function] [arguments]...
   or: busybox --list[-full]
   or: function [arguments]...

    BusyBox is a multi-call binary that combines many common Unix
    utilities into a single executable.  Most people will create a
    link to busybox for each function they wish to use and BusyBox
    will act like whatever it was invoked as.

Currently defined functions:
    [, [[, addgroup, adduser, arping, ash, awk, basename, cat, chgrp, chmod, chown, chroot, clear, cmp, cp, crond, crontab, cut, date, dd, delgroup, deluser, dirname, dmesg, echo, egrep, env, expr, false,
    fgrep, find, free, fsync, grep, gunzip, gzip, halt, head, hexdump, hostid, id, ifconfig, init, insmod, kill, killall, klogd, ln, lock, logger, ls, lsmod, mac_addr, md5sum, mkdir, mkfifo, mknod, mktemp,
    mount, mv, nice, passwd, pgrep, pidof, ping, ping6, pivot_root, poweroff, printf, ps, pwd, readlink, reboot, reset, rm, rmdir, rmmod, route, sed, seq, sh, sleep, sort, start-stop-daemon, strings,
    switch_root, sync, sysctl, tail, tar, tee, telnet, test, tftp, time, top, touch, tr, traceroute, true, udhcpc, umount, uname, uniq, uptime, vconfig, vi, watchdog, wc, wget, which, xargs, yes, zcat

แƒ“แƒ˜แƒ“แƒ˜! แƒ›แƒแƒ’แƒ แƒแƒ› แƒ’แƒ—แƒฎแƒแƒ•แƒ— แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒแƒ—, แƒ แƒแƒ› BusyBox แƒ•แƒ”แƒ แƒกแƒ˜แƒ แƒแƒ แƒ˜แƒก 1.19.4. แƒ”แƒก แƒแƒ แƒ˜แƒก BusyBox-แƒ˜แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒซแƒ•แƒ”แƒšแƒ˜ แƒ•แƒ”แƒ แƒกแƒ˜แƒแƒ’แƒแƒ›แƒแƒ•แƒ˜แƒ“แƒ 2012 แƒฌแƒšแƒ˜แƒก แƒแƒžแƒ แƒ˜แƒšแƒจแƒ˜.

แƒแƒกแƒ” แƒ แƒแƒ›, TP-Link แƒแƒ•แƒ แƒชแƒ”แƒšแƒ”แƒ‘แƒก firmware แƒกแƒฃแƒ แƒแƒ—แƒก 2019 แƒฌแƒ”แƒšแƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— (GCC Toolchain, kernel, BusyBox แƒ“แƒ แƒ.แƒจ.) 2012 แƒฌแƒšแƒ˜แƒ“แƒแƒœ!

แƒแƒฎแƒšแƒ แƒ’แƒ”แƒกแƒ›แƒ˜แƒ—, แƒ แƒแƒขแƒแƒ› แƒ•แƒแƒงแƒ”แƒœแƒ”แƒ‘ แƒงแƒแƒ•แƒ”แƒšแƒ—แƒ•แƒ˜แƒก OpenWRT แƒฉแƒ”แƒ›แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒขแƒแƒ แƒ”แƒ‘แƒ–แƒ”?

แƒ”แƒก แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก

Binwalk-แƒก แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒแƒก แƒ”แƒœแƒขแƒ แƒแƒžแƒ˜แƒ˜แƒก แƒแƒœแƒแƒšแƒ˜แƒ–แƒ˜, แƒ“แƒแƒ‘แƒ”แƒญแƒ“แƒแƒก แƒœแƒ”แƒ“แƒšแƒ˜ แƒ”แƒœแƒขแƒ แƒแƒžแƒ˜แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒจแƒ”แƒฅแƒ›แƒœแƒแƒก แƒ”แƒœแƒขแƒ แƒแƒžแƒ˜แƒ˜แƒก แƒ’แƒ แƒแƒคแƒ˜แƒ™แƒ”แƒ‘แƒ˜. แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ”แƒกแƒ˜, แƒฃแƒคแƒ แƒ แƒ“แƒ˜แƒ“แƒ˜ แƒ”แƒœแƒขแƒ แƒแƒžแƒ˜แƒ แƒจแƒ”แƒ˜แƒœแƒ˜แƒจแƒœแƒ”แƒ‘แƒ, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒกแƒฃแƒ แƒแƒ—แƒ–แƒ” แƒ‘แƒแƒ˜แƒขแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ˜แƒ—แƒ˜แƒ. แƒ”แƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒกแƒฃแƒ แƒแƒ—แƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ“แƒแƒจแƒ˜แƒคแƒ แƒฃแƒš, แƒจแƒ”แƒ™แƒฃแƒ›แƒจแƒฃแƒš แƒแƒœ แƒ‘แƒฃแƒœแƒ“แƒแƒ•แƒแƒœ แƒคแƒแƒ˜แƒšแƒก. แƒ›แƒงแƒแƒ แƒ˜ แƒ“แƒแƒจแƒ˜แƒคแƒ•แƒ แƒ˜แƒก แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ˜? แฒ แƒแƒขแƒแƒ›แƒแƒช แƒแƒ แƒ.

แƒกแƒแƒฎแƒšแƒ˜แƒก แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜แƒก แƒจแƒ”แƒ‘แƒ แƒฃแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒœแƒŸแƒ˜แƒœแƒ”แƒ แƒ˜แƒ binwalk-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒ”แƒœแƒ“แƒแƒ‘แƒ˜แƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ แƒแƒฃแƒขแƒ”แƒ แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒแƒก?

แƒฉแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜ --raw แƒ’แƒแƒ›แƒแƒกแƒแƒฎแƒฃแƒšแƒ”แƒ‘แƒแƒจแƒ˜ แƒแƒœ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒจแƒ˜ แƒ›แƒแƒ แƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ‘แƒแƒ˜แƒขแƒ˜แƒก แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒแƒ‘แƒ˜แƒก แƒžแƒแƒ•แƒœแƒ --hexdump แƒ”แƒฅแƒ•แƒกแƒ™แƒฃแƒ—แƒฎแƒ แƒœแƒแƒ’แƒแƒ•แƒกแƒแƒงแƒ แƒ”แƒšแƒ˜แƒก แƒจแƒ”แƒกแƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒšแƒแƒ“ แƒแƒ แƒ˜ แƒแƒœ แƒ›แƒ”แƒขแƒ˜ แƒจแƒ”แƒงแƒ•แƒแƒœแƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒจแƒ”แƒ“แƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒ–แƒœแƒ˜แƒ—.

แƒ›แƒแƒ แƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒฎแƒ”แƒšแƒ›แƒแƒฌแƒ”แƒ แƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ“แƒแƒ”แƒ›แƒแƒขแƒแƒก binwalk-แƒก แƒแƒœ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ–แƒ” แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒ˜แƒ แƒแƒ“แƒ˜ แƒฎแƒ”แƒšแƒ›แƒแƒฌแƒ”แƒ แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—, แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— --magic, แƒแƒœ แƒ›แƒแƒ— แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— $ HOME / .config / binwalk / magic.

Binwalk-แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒ›แƒ”แƒขแƒ˜ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ˜แƒก แƒœแƒแƒฎแƒ•แƒ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ–แƒ” แƒแƒคแƒ˜แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ.

แƒ‘แƒ˜แƒœแƒ˜แƒก แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ

แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก API binwalk, แƒ“แƒแƒœแƒ”แƒ แƒ’แƒ˜แƒšแƒ˜ แƒ แƒแƒ’แƒแƒ แƒช Python แƒ›แƒแƒ“แƒฃแƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒก Python-แƒ˜แƒก แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒกแƒ™แƒ แƒ˜แƒžแƒขแƒจแƒ˜, แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒแƒ“ แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒแƒก binwalk แƒกแƒ™แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒ, แƒ“แƒ binwalk แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒฎแƒแƒ–แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒ›แƒ—แƒšแƒ˜แƒแƒœแƒแƒ“ แƒ“แƒฃแƒ‘แƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒงแƒแƒก Python แƒ™แƒแƒ“แƒ˜แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒแƒ แƒ˜ แƒฎแƒแƒ–แƒ˜แƒ—!

import binwalk
binwalk.scan()

Python API-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒžแƒ˜แƒ—แƒแƒœแƒ˜แƒก แƒ“แƒแƒœแƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜ binwalk-แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒกแƒ แƒ“แƒ แƒ’แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒแƒกแƒ”แƒ•แƒ” แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก IDA แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒ“แƒ แƒฆแƒ แƒฃแƒ‘แƒšแƒ˜แƒก แƒ•แƒ”แƒ แƒกแƒ˜แƒ Binwalk Pro.

แƒ›แƒแƒจ, แƒ แƒแƒขแƒแƒ› แƒแƒ  แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ•แƒ— firmware-แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒก แƒ˜แƒœแƒขแƒ”แƒ แƒœแƒ”แƒขแƒ˜แƒ“แƒแƒœ แƒ“แƒ แƒกแƒชแƒแƒ“แƒ”แƒ— binwalk? แƒ’แƒžแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ˜ แƒซแƒแƒšแƒ˜แƒแƒœ แƒ’แƒแƒ”แƒ แƒ—แƒแƒ‘แƒ˜ :)

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ