人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統 > 網絡技術教程 > 詳細頁面

路由器固件不是硬件,而是軟件,它的固件

路由器固件不是硬件,而是軟件,它的固件

更新時間:2023-08-22 文章作者:未知 信息來源:網絡 閱讀次數:

網絡故障(network failure)是指由于硬件的問題、軟件的漏洞、病毒的侵入等引起網絡無法提供正常服務或降低服務質量的狀態。

1、路由器文件系統

我們通常所說的更新路由器是指更新路由器的固件。不同的路由器使用不同的硬件平臺,操作系統和固件。通常,路由器的固件包含操作系統的內核和文件系統。

1. 1、路由器固件

路由器固件不是硬件,而是軟件。在路由器中,通常將其固化在只讀存儲器中,因此稱為固件。

在漏洞分析過程中,通常有兩種獲取路由器固件的方法:

一、從路由器制造商提供的更新網站上下載;

二、通過硬件訪問,從路由器的Flash中提取固件。

路由器固件包含路由器中的所有可執行程序和配置文件信息。此信息對于我們分析和挖掘路由器漏洞至關重要。獲取固件后,我們可以將文件系統與固件分開。

1. 2、文件系統

文件系統是操作系統的重要組成部分,也是操作的基礎。不同的路由器使用不同的文件系統格式。根文件系統將打包為當前路由器使用的文件系統格式,然后組裝為固件。

Squashfs是具有超高壓縮率的只讀格式文件系統,可以達到34%的壓縮率。系統啟動后,文件系統將保存在壓縮的文件系統文件中。該文件可以以換回和訪問其中文件的形式安裝。當進程需要某些文件時,僅將壓縮文件的相應部分解壓縮。

Squashfs文件系統的常用壓縮格式為GZIP,LZMA,LZO,XZ(LZMA 2)),它們在路由器中普遍使用。路由器的根文件系統通常遵循Squashfs的一種常用壓縮格式。文件系統。將其打包以形成完整的Squashfs文件系統,然后與路由器操作系統的內核一起形成更新的固件。

2、手動提取文件系統

要分析路由器漏洞,必須在路由器中獲取易受攻擊的應用程序。文件系統是操作系統的重要組成部分,也是操作的基礎。文件系統包含實現路由器各種功能的基本應用程序。例如,Web服務器是在家用路由器中實現的,因此用戶可以通過Web訪問路由器并管理路由器?梢詮墓碳刑崛∥募到y,并且很難從路由器固件中提取文件系統。原因之一是不同的操作系統使用不同的文件系統。另外,路由器的文件系統壓縮算法也不同。有些路由器甚至使用非標準壓縮算法來打包文件系統。

家用雙頻路由器有用嗎_小型家用榨汁機操作視頻展示_家用路由器 操作系統

2. 1、查看文件類型

The

file命令可以通過定義的魔術簽名來識別各種格式,包括常用的Linux / Windows可執行文件,DOC,PDF和各種壓縮格式。

如果文件firmware.bin -----> firmware.bin:數據

在上面的示例中,file命令未找到與任何文件類型的匹配項,但這并不意味著固件是一種未被觸及的文件格式。原因是file命令從給定文件的第一個字節開始。模式匹配將按照已建立的格式進行。

2. 2、手動確定文件類型

如果找不到符合要求的文件格式,則需要使用以下方法進行進一步分析:

文件系統魔術簽名標頭是指文件系統中包含的可識別字符的字符串。使用此字符串,表示文件可能包含某個文件系統。當然,如果要確定是否包含某個文件系統,則需要使用其他條件進行證明,即需要執行步驟2和3。

Windows應用程序以字符串“ MZ”開頭,但并非所有具有此功能的文件都是可執行程序。它也可能是一個文本文件,但是它恰好以“ MZ”開頭,因此只有一個功能,只需確定文件的類型是否有偏差即可。

2. 2. 1、檢索文件系統魔術簽名

基于每個文件系統的前幾個字節提取文件系統標頭功能。常用的文件系統標頭功能如下:

檢查是否有cramfs文件系統標頭功能和魔術簽名“ 0x28cd3d45”。由于我不知道文件組織是大端格式還是小端格式,因此需要進行第二次搜索:

字符串firmware.bin | grep`python -c'print“ \ x28 \ xcd \ x3d \ x45”'`

字符串firmware.bin | grep`python -c'print“ \ x45 \ x3d \ xcd \ x28”'`

如果它不是cramfs文件類型,則可以嘗試確定它是否是Squashfs文件系統:

字符串fimware.bin | grep“ sqsh”或“ hsqs”或“ qshs”或“ shsq”或“ hsqt”或“ tqsh”或“ sqlz”等。

在這里,如果您在字符串firmware.bin中打印出hsqs | grep“ hsqs” ----->,我們找到了squashfs文件系統“ hsqs”的魔術簽名頭,但是我們不確定是否該文件包含squashfs文件系統,需要進一步確定firmware.bin是否為squashfs文件系統。

2. 2. 2、確定文件系統

進入hexdump -C firmware.bin之后| grep -n“ hsqs”,出現:

00240:00160090 68 73 71 73 9d 08 00 00 ab c0 ba 51 00 00 04 00 | hsqs .... ...... Q .......... |

您可以看到在偏移量0x160090(十六進制144193 6))上找到了“ hsqs”。

然后使用dd命令復制從0x160090開始的100字節數據。命令如下:

dd if = firmware.bin bs = 1 count = 100 skip = 1441936 of = squash

復制100字節數據的原因是因為squashfs文件系統的標頭校驗和不會超過100字節。

最后,使用file命令確認復制的文件南瓜的文件類型。

運行文件壓縮:

squash:Squashfs文件系統,小字節序,版本4. 0,6164554字節,2205個inode,塊大。262144字節,

2. 3、手動解壓縮文件系統

小型家用榨汁機操作視頻展示_家用路由器 操作系統_家用雙頻路由器有用嗎

在上面,我們已經知道firmware.bin包含squashfs文件系統,其偏移量為0x00160090(十進制144193 6),其大小為6164554字節。因此,可以使用dd命令復制數據塊。

命令如下:

dd if = firmware.bin bs = 1 count = 6164554 skip = 1441936 of = kernel.squash

運行上述命令后,已成功提取屬于squashfs文件系統的數據。下一個任務是在squashfs文件系統中還原根文件系統。

盡管Linux隨附的file命令包含與squashfs文件系統有關的魔術簽名頭信息,但對于我們而言,深入了解文件系統還不夠。

使用file命令的“ -m”參數加載自定義魔術簽名文件并輸出更多詳細信息。

命令:file -m filesystems.hsqs hernel.squash

跳過打印,在firmware.bin中提取的kernel.squash使用LZMA壓縮。

squashfs-tools工具可以在linux下安裝,命令“ apt-get install squashfs-tools”,該工具目前僅支持GIZP,LZO,XZ格式,不支持LZMA格式。

您可以安裝firmware-mod-kit進行解壓縮。

git clone

sudo apt-get install build-essential zlib1g-dev libz1zma-dev python-magic

./ configure && make

然后在firmware-mod-kit目錄中運行unsquashfs_all.sh kernel.squash


本文來自本站,轉載請注明本文網址:
http://www.pc-fly.com/a/tongxingongju/article-373755-1.html


當今,越來越多的業務應用運行于網絡架構之上,保障網絡的持續、高效、安全的運行,成為網絡管理者面臨的巨大挑戰。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 依兰县| 黄梅县| 文成县| 霍邱县| 西丰县| 南靖县| 宣汉县| 玉树县| 柳河县| 刚察县| 卢龙县| 旺苍县| 云南省| 海丰县| 南宁市| 南阳市| 蓬莱市| 奈曼旗| 洱源县| 沾化县| 大安市| 来凤县| 房产| 云梦县| 重庆市| 湖北省| 衡阳市| 黎平县| 四子王旗| 长丰县| 隆昌县| 梅河口市| 闵行区| 遂宁市| 雷州市| 甘南县| 山阴县| 连山| 中超| 赫章县| 剑阁县|