PsTools是Sysinternals Suite中一款排名靠前的一个安全管理工具套件。现在被微软收购。目前pstools中含有12款各式各样的小工具,在批量管理方面有很多用途。
所有的pstool第一次运行时都会弹框。可以用–accepteula这个参数绕过。
还有所有的pstool都支持IPC$,一旦IPC$共享是连接的就不用输入-u 和-p这两个参数。
如何建立IPC$连接。命令如下:
Net user \目标ip\ 密码 /user:用户 例如:Net user \192.168.1.3\ 123456 /user:test
建立后所有的ps工具都将可以不用输入用户和密码了。
其中12款工具简介如下:
- PsExec – 远程执行进程
- PsFile – 显示远程打开的文件
- PsGetSid – 显示计算机或用户的 SID
- PsInfo – 列出有关系统的信息
- PsKill – 按名称或进程 ID 终止进程
- PsList – 列出有关进程的详细信息
- PsLoggedOn – 查看在本地通过资源共享(包含所有资源)登录的用户
- PsLogList – 转储事件日志记录
- PsPasswd - 更改帐户密码
- PsService – 查看和控制服务
- PsShutdown – 关闭并重新启动(可选)计算机
- PsSuspend – 暂停进程
这里对其中的几个工具进行详解,其他的将只介绍用法。
psexec的应用详解
Pstools中最强大最常利用的工具就属psexec这款工具。这款工具的本意是替代telnet这种不安全的管理方式。它最大的特点就属无需安装客服端程序就可以远程操作服务器。
简单来说,就是一旦你知道服务器或者电脑的用户名和密码,你就可以利用它远程执行系统命令。它适用于windows NT/2x/xp/vista
下面介绍详细参数:
- -u 远程计算机的用户名
- -p 远程计算机用户对应密码
- -c <[路径]文件名>:拷贝文件到远程机器并运行(注意:运行结束后文件会自动删除)
- -d 不等待程序执行完就返回 (意思就是,当你执行一个程序无需等到他结束才返回信息)
- -h用于目标系统是Vista或更高版本
其他参数就不做介绍,这里主要是讲用法。
远程登录
psexec \目标ip -u 用户名 -p 密码 进程名 psexec \192.168.1.3 –u test –p 123456 cmd.exe
这样可以连接到一台远程服务器,并获得一个cmdshell,shell权限即为当前用户权限。
需要注意,由于windows策略,不允许空密码登陆 ,另外比guest权限大的用户组都可以远程登陆 。
程序上传并执行
这里用抓取系统密码的神器getpass来演示,程序放在H:\getpass.exe
程序上传并执行命令如下:
Psexec \192.169.1.3 –u test –p 12345 –c H:\getpass.exe –d
最后一个-d的参数是防止程序远程运行后会卡住而无法返回信息 。
pspasswd的应用详解
Pspasswd是一个用来更改用户密码的工具,支持远程密码修改和本地密码修改。这款工具的特点就是不依靠net,exe程序进行密码修改。
本地修改命令如下:
pspasswd administrator yueyan
远程命令如下:
pspasswd \192.168.1.3 –u administrator –p 123456 guest yueyan
命令的意思就是,用administrator这个管理员账户登录后修改用户guest的密码为yueyan。
相对来说本地修改密码的功能更强大一些。
pskill+psinfo+pslist的应用详解
pskill.
如果你想远程结束远程主机上的一个进程,你可以使用pskill。
我们就介绍一下常用的命令:
比如我们想远程关闭远程主机正在运行的cmd这个进程,可以用pskill进行杀掉。命令如下:
pskill \192.168.1.3 –u test –p 123456 cmd.exe
psinfo
基本参数是:
- -h 显示已经安装的补丁信息
- -s 显示已安装的软件信息
- -d 显示磁盘信息
如果我们想看远程主机的基本信息,命令如下:
psinfo –h –s –d \192.168.1.3 –u administrator –p 123456
psinfo –h –s –d \192.168.1.3 –u administrator –p 123456
pslist
主要特点是,显示本地或者远程计算机的进程运行情况。
主要参数:
- -m 显示内存信息
- -x 显示进程,内存和线程
- -t 显示进程树
- -s n 在任务管理器模式先运行,n指定秒,以esc结束。
- -r n 任务管理器模式刷新速率,n指秒
例如我们想看远程计算机的进程运行情况,命令如下:
Pslist –x \192.168.1.3 –u test –p 123456
其他ps工具介绍
PSLOGGEDON
查看指定计算机的本地及远程登录的用户和登录时间。必须建立在IP$共享下才可以使用这个工具。
命令如下:
Psloggedon –l \192.168.1.3
PSLOGLIST
事件日志转储及管理。
这个对于渗透测试是非常有用的,它最大的特点就是远程清理系统日志。
常用:
psloglist \72.56.17.74 application -c > nul psloglist \72.56.17.74 system -c > nul psloglist \72.56.17.74 security -c > nul
分别是清理应用程序日志,系统运行日志,安全日志。
PSSERVICE
管理服务。
常用:
psservice query messenger
查询messenger服务的相关信息。
最重要的项目是:服务名称、显示名称、服务描述、服务类型、服务状态。
psservice config messenger
查询服务的配置信息。
最重要的项目是:服务名称、服务描述、服务类型、服务启动类型、服务错误控制级别、可执行文件的路径等等。
PSSHUTDOWN
关机工具。
常用命令:
Psshutdown –s –t 60
60秒后关机。
下面几个不常用,就简单介绍下:
#PsFile – 显示远程打开的文件 Psfile \192.168.1.3 #PsGetSid – 显示计算机或用户的 SID Psgetsid \192.168.1.3 #PsSuspend – 暂停进程 Pssuspend \192.168.1.3 –u test –p 123456 cmd,exe
以上转载自 sysprogram ,在远程工作中很有用,记录于此便于查找。
恰不到“人到中年万事休”,
我怎肯虚度了春秋。
——关汉卿
评论
还没有任何评论,你来说两句吧!