中國聯通家庭智能網關 EPON/4+1+WiFi(2.4G) 管理員密碼破解


坐標lylzad ,今天剛從聯通公司辦理了千兆光貓更換,200M的寬帶用百兆光貓怎么也說不過去啊,於是今日便得到了這台新的光貓。
avatar
剛接上路由器,令我頭大的事情就發生了,這個新的光貓是光貓路由器二合一,自動給我完成了撥號,這肯定不能忍啊,我的ddns啊 !!!
於是走上了光貓管理員密碼破解之路。

可以看到光貓的背面是提供了一個 普通用戶的登錄賬號和密碼的
avatar

在朋友的幫助下,看了很多帖子,整體來說有兩種方法來破解:

1.通過telnet:

可以看這個貼子:山東聯通 kd-yun-811e 光貓超級密碼獲取,不過我沒有成功。而后又看了這個工具:天邑光貓配置工具貌似這個工具是適用於電信的。

2.通過修改網頁js:

通過修改js繞過表單驗證實現密碼修改。受到一篇帖子的啟發,他遇見的情況是,網頁限制沒有提供CUAdmin這個用戶名登陸的入口,然而通過修改js的表單值,實現了使用用戶名和密碼都是CUAdmin的方式實現了管理賬戶登錄。

而我也試圖使用這種方法發現我的情況並不相同,如圖,有兩個入口,我的版本給我了CUAdmin的這個登錄入口,並且我使用CUAdmin登錄並沒有成功。
avatar

驚喜便來了,當我使用默認的user賬戶登錄之后發現了這么一個修改user用戶密碼的頁面看了一會這個修改密碼的提交代碼后發現,改修改代碼就是簡單的一個post表單並且僅僅使用了幾行js來驗證表單數據。
avatar
avatar

function submit_pwd() 
	{
		var docForm = document.getElementById('form_telacccfg');
		with(docForm) 
		{
			if ( window.parent.authLevel == 1)
			{
				if ( UserOldPassword.value != userPassword)
				{
					alert("舊密碼輸入錯誤!");
					return;
				}				
			}
			
			if (UserPassword.value != AdminPassword.value)
			{
				alert("密碼兩次輸入不一致!");
				return;
			}	
			
			var str = new String();
			str = UserPassword.value;
			if (str.length > 64) 
			{
				alert('密碼長度不能超過64個字符!');
				return;
			}
			if (str.indexOf(' ') != -1) 
			{
				alert('密碼不能包含空格');
				return;
			}
			if ( parent.authLevel == USER && str.length >= 16)
			{
				alert('用戶密碼長度不能超過15個字符!');
				return;
			}
			if ( window.parent.authLevel == 1) //user
			{
				widget.submitElemIndep('userpasswd.htm', 'set', 'InternetGatewayDevice.X_CU_Function.Web.UserPassword', UserPassword);				

			}
			else{
				if( $("Username_text").options[0].selected == true) //admin
				{
					//widget.submitElemIndep('userpasswd.htm', 'set', 'InternetGatewayDevice.X_BROADCOM_COM_LoginCfg.AdminPassword', UserPassword);
					//對‘#’特殊字符進行轉義 add by:wh 2017.9.28
//					if(str.indexOf('#')>-1){
//						str=str.split("#");
//						var passwordStr=str[0]+'%23'+str[1];
//						loc = "userpasswd.htm?a=set&x=InternetGatewayDevice.X_CU_Function.Web.AdminPassword&AdminPassword=" + passwordStr;
//					}
//					else{
//						loc = "userpasswd.htm?a=set&x=InternetGatewayDevice.X_CU_Function.Web.AdminPassword&AdminPassword=" + str;
//					}
//					var code = 'location="' + loc + '"';
//					eval(code);
					widget.submitElemIndep('userpasswd.htm', 'set', 'InternetGatewayDevice.X_CU_Function.Web.AdminPassword', AdminPassword);
				}
				else //user
				{
					widget.submitElemIndep('userpasswd.htm', 'set', 'InternetGatewayDevice.X_CU_Function.Web.UserPassword', UserPassword);				
				}
			}
		}
		return true;
    }
    

代碼修改為:

function submit_pwd() 
{
    var docForm = document.getElementById('form_telacccfg');
    with(docForm) 
    {
        
            if( $("Username_text").options[0].selected == true) //admin
            {
                widget.submitElemIndep('userpasswd.htm', 'set', 'InternetGatewayDevice.X_CU_Function.Web.AdminPassword', AdminPassword);
            }
            else //user
            {
                widget.submitElemIndep('userpasswd.htm', 'set', 'InternetGatewayDevice.X_CU_Function.Web.UserPassword', UserPassword);				
            }
        
    }
    return true;
}

具體操作不再上圖,學過一點點前端js的朋友相信都能做得到。

所以我實際做的事情就是,刪除js中的所有的驗證代碼,以及修改選擇器中的值為CUAdmin
如圖
avatar
直接輸入想要設置的密碼然后點擊保存就可以了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM