Ⅰ 怎麼將路由器官方下載的固件變成編輯器固件
以Newifi新路由為例,固件升級方法如下,供你參考
方法/步驟
1.首先打開IE瀏覽器,輸入Newifi新路由的路由器地址,初始地址為:192.168.99.1,出現Newifi新路由登錄界面。
2.輸入Newifi新路由的密碼之後可以進入路由管理界面,密碼為你設置的WIFI密碼。然後點擊路由設置。
3.點擊路由系統升級。可以看你的Newifi新路由當前路由系統版本,與最新版本號。
4.點擊升級後,會提示警告信息,點擊確定升級。
5.進入路由器新版本固件ROM下載。
6.Newifi新路由固件下載完成後,會自動進入升級。
7.升級完成後Newifi新路由會自己重啟,進入升級界面,可以看新版本號。若需要嘗試測試版本,或其它兼容的路由器固件ROM,可以選擇本地進行刷路由系統。
Ⅱ 騰達路由器固件逆向
1、在瀏覽器 中輸入路由器的管理地址:192.168.0.1按回車鍵,在跳轉的頁面中輸入密碼 admin點擊「確定」;
2、點擊「高級設置」;
3、點擊「系統設置」-「升級」-「當前系統版本」即為路由器當前的軟體版本信息,確定路由器的當前系統版本是否可以升級你下載的軟體;
4、點擊「瀏覽」-選中正確的升級文件(事先下載解壓好的)-「升級」;
5、升級完成後路由器會進入自動重啟狀態;
6、升級完成後,參考第二步查看路由器當前系統版本是否已改變,若已經改變則證明升級已成功。
Ⅲ 怎樣把路由器里的固件拷貝出來
目前已知的還沒有直接導出路由器固件的軟體,獲取路由器固件的最後辦法是登錄路由器官網獲取,以水星mw305r為例:
1、網路一下:水星官網,點擊鏈接進入;
Ⅳ 怎樣提取無線路由器固件
有沒有不用拆IC的方法備出來呢?
Ⅳ 怎麼對路由器的固件進行修改類似破解一樣! 涉及程序編譯嗎
改WIFI密碼的步驟是:
1.打開瀏覽器,在地址欄輸入路由器地址:192.168.1.1。(以你個人路由器地址為准,一般說明書上會有,無限路由器上面也會標識)這樣就可以進入路由器設置頁面。
2.進去後會彈出對話框,要輸入用戶名和密碼,無線路由器上面會標識,一般用戶名和密碼都是:admin
3.輸入用戶名和密碼後會進入路由器的設置頁面,然後點擊,無線設置 下的 無線安全設置 。
4.進入無線網路安全設置之後,選擇WPA-PSK/WPA2-PSK這一選項,在PSK密碼裡面輸入自己想好的密碼,就是給自己家WIFI設置的密碼就可以了。
5.輸入密碼之後點擊下面的保存鍵進行保存,之後就大功告成了。
6.保存之後,需要重啟一下路由器就可以了!
Ⅵ 路由器的固件可以自己修改並刷進去么比如只改他管理頁面的一個字。
用OpenWRT,代碼開源,官網可下載,允許用戶自己修改、編譯、增減附加功能。
Ⅶ 怎麼反編譯D-Link路由器固件程序並發現它的後門
基於上面的字元信息可以看出,這個/bin/webs二進製程序是一個修改版的thttpd,提供路由器管理員界面操作功能。看起來是經過了台灣明泰科技(D-Link的一個子公司)的修改。他們甚至很有心計的將他們很多自定義的函數名都輔以「alpha」前綴:
明泰科技的自定義函數
這個alpha_auth_check函數看起來很有意思!
這個函數被很多地方調用,最明顯的一個是來自alpha_httpd_parse_request函數:
調用alpha_auth_check函數
我們可以看到alpha_auth_check函數接收一個參數(是存放在寄存器$s2里);如果alpha_auth_check返回-1(0xFFFFFFFF),程序將會跳到alpha_httpd_parse_request的結尾處,否則,它將繼續處理請求。
寄存器$s2在被alpha_auth_check函數使用前的一些操作代碼顯示,它是一個指向一個數據結構體的指針,裡面有一個char*指針,會指向從HTTP請求里接收到的各種數據;比如HTTP頭信息和請求地址URL:
$s2是一個指向一個數據結構體的指針
我們現在可以模擬出alpha_auth_check函數和數據結構體的大概樣子:
struct http_request_t
{
char unknown[0xB8];
char *url; // At offset 0xB8 into the data structure
};
int alpha_auth_check(struct http_request_t *request);
alpha_auth_check本身是一個非常簡單的函數。它會針對http_request_t結構體里的一些指針進行字元串strcmp比較操作,然後調用check_login函數,實際上就是身份驗證檢查。如果一旦有字元串比較成功或check_login成功,它會返回1;否者,它會重定向瀏覽器到登錄頁,返回-1;
alpha_auth_check函數代碼片段
這些字元串比較過程看起來非常有趣。它們提取請求的URL地址(在http_request_t數據結構體的偏移量0xB8處),檢查它們是否含有字元串「graphic/」 或 「public/」。這些都是位於路由器的Web目錄下的公開子目錄,如果請求地址包含這樣的字元串,這些請求就可以不經身份認證就能執行。
然而,這最後一個strcmp卻是相當的吸引眼球:
alpha_auth_check函數中一個非常有趣的字元串比較
這個操作是將http_request_t結構體中偏移量0xD0的字元串指針和字元串「xmlset_roodkcableoj28840ybtide」比較,如果字元匹配,就會跳過check_login函數,alpha_auth_check操作返回1(認證通過)。
我在谷歌上搜索了一下「xmlset_roodkcableoj28840ybtide」字元串,只發現在一個俄羅斯論壇里提到過它,說這是一個在/bin/webs里一個「非常有趣」的一行。我非常同意。
那麼,這個神秘的字元串究竟是和什麼東西進行比較?如果回顧一下調用路徑,我們會發現http_request_t結構體被傳進了好幾個函數:
事實證明,http_request_t結構體中處在偏移量 0xD0處的指針是由httpd_parse_request函數賦值的:
檢查HTTP頭信息中的User-Agent值
將http_request_t + 0xD0指針指向頭信息User-Agent字元串
這代碼實際上就是:
if(strstr(header, "User-Agent:") != NULL)
{
http_request_t->0xD0 = header + strlen("User-Agent:") + strspn(header, " \t");
}
知道了http_request_t偏移量0xD0處的指針指向User-Agent頭信息,我們可以推測出alpha_auth_check函數的結構:
#define AUTH_OK 1
#define AUTH_FAIL -1
int alpha_auth_check(struct http_request_t *request)
{
if(strstr(request->url, "graphic/") ||
strstr(request->url, "public/") ||
strcmp(request->user_agent, "xmlset_roodkcableoj28840ybtide") == 0)
{
return AUTH_OK;
}
else
{
// These arguments are probably user/pass or session info
if(check_login(request->0xC, request->0xE0) != 0)
{
return AUTH_OK;
}
}
return AUTH_FAIL;
}
換句話說,如果瀏覽器的User-Agent值是 「xmlset_roodkcableoj28840ybtide」(不帶引號),你就可以不經任何認證而能訪問web控制界面,能夠查看/修改路由器的 設置(下面是D-Link路由器(DI-524UP)的截圖,我沒有 DIR-100型號的,但DI-524UP型號使用的是相同的固件):
訪問型號DI-524UP路由器的主界面
基於HTML頁上的源代碼信息和Shodan搜索結果,差不多可以得出這樣的結論:下面的這些型號的D-Link路由器將會受到影響:
DIR-100
DI-524
DI-524UP
DI-604S
DI-604UP
DI-604+
TM-G5240
除此之外,幾款Planex路由器顯然也是用的同樣的固件程序:
BRL-04UR
BRL-04CW
Ⅷ 路由器的固件能反編譯嗎
可以進行反編譯。
路由器的固件通常存儲在FLASH中,通常都是以xxx.bin格式的文件形式保存的。bin格式是一種二進制文件,存儲的是路由器的機器碼,通過反編譯,可以將其還原為匯編碼,以便進行分析。獲取、反編譯及分析固件通常按下列步驟:
常見路由器的SPI FLASH編程器;
最好是用Winows 筆記本來登陸到ubuntu系統的台式機上的方式 ;
Windows 下的Putty、winhex、WinSCP軟體工具;
TTL線、網線、萬用表及烙鐵,熱風槍等工具和線材;
拆開對應的路由器設備的外殼;
查看路由器內部的的介面標識;
用萬用表找到對應的地線GND標號;
通常為了調試或升級的方便,都會保留TTL引腳;
查看是否存在有TTL線的引腳或觸點;
用准備好的TTL線連接路由器的TTL引腳或觸點;
windows下用putty中的串口項打開對應的TTL線連接的串口;
查看是否有路由器啟動的日誌信息,如果有,請仔細分析;
等路由信息啟動完畢後,看看是否有終端跳出來,是否有登陸窗口跳出;
如果有登陸窗口,但是無法輸入,或者無法猜測出對應的用戶名密碼;
用熱風槍或烙鐵取下路由器上的存儲FLASH晶元;
在Windows下用編程器提前存儲在FLASH晶元的全部固件;
用WinSCP工具將提取出的固件上傳到ubuntu系統中;
在ubuntu系統中安裝對應的固件分析工具(firmware-mod-kit、binwalk、lzma、squashfs-tools等);
用這些分析工具進行分析,分析出來後,解壓對應的數據包,提前對應的關鍵性數據進行分析。
按以上步驟可以實現對路由器的分析。
Ⅸ 如何反編譯D-Link路由器固件程序並發現它的後門
本來就有,不是廠商設置,就是有關部們設置的;懂的人不會問,不懂的也教不會;歡迎追問~!
Ⅹ 路由器固件如何打開源碼
有時因為某種原因可能要把路由器恢復出廠設置,但忘了密碼,路由器裡面顯示的是*號,當然我們可以把ADSL帳號記下來,然後打96861查,電信是要求提供一些申請資料的,但是有時寬頻也許並不是你申請的,問來問去很麻煩,有可能還問不明白,還不如自己動手破解。
原理:寬頻設備信息存儲在路由器的固件里,用查看源代碼的方法可以得到我們想要的密碼。
步驟:1、備份備份系統設置信息,這個一般在路由器的管理工具里。
D-Link的DI-504的為pro
file.bin (工具 → 系統設定 → 備份目前設定值),SMC的為SMCrouter_backup.bin(TOOLS → Configuration Tools → Backup to SMCrouter_backup.bin),TP-Link的一般為xxx.cfg(系統工具 → 備份和載入配置 → 備份配置文件) !當然有的不一定是這個步驟,但都差不多,意思就是把路由器里的設置都備份出來!(有的是config.bin的)
2、用Word打開備份的文件(當然你也可以用記事本打開,但會看似亂碼,不過也沒關系,下面操作一樣,就是不太好看)
你可以在Word中查找你的用戶名(用戶名在設置用WAN口中就有)找到用戶名後在用戶名後面的就是密碼了!也可以按Ctrl+F搜索PASS來到POE_PASS=xxxxxxxx這里,附近還有個POE_USER=adxxxxxxxx
這兩個就是密碼和用戶名了,你把它們記下來就可以了。
用戶名:adxxxxxxxx
SMC的直接就可以看到密碼和用戶名,一般在一個£符號後面