权限提升
权限提升简称<提权>,是一种通过各种办法和漏洞,提高自己在服务器中的权限,以便控制全部资源的方法。比如在Windows中就是获得System的权限,在Linux就是获得root的权限
一般提权的方法有
- 系统漏洞提权
- 数据库提权
- 权限继承类提权
- 第三方软件/服务提权
Linux系统提权
Linux系统漏洞的exp一般按照内核版本来命名:2.6.18-194或2.6.18.c等等。形如2.6.18-194这个形式的,可以直接执行。形如2.6.18.c,需要在目标机器上编译后运行,之后提权,也有少部分exp是按照发行版版本命名。
提权exp的基本使用方法:
执行这个可执行文件,一般情况下Linux的本地提权要用nc反弹出来,因为Linux下提升权限后得到的是交互式shell,需反弹才能进行下一步命令的执行。使用uname -a命令或者cat /proc/version,来判断系统的内核情况等等,然后使用相对应的exp进行提权,在提权过程中需要为你的exp赋权限,chmod,但是在Linux服务器很多情况下管理员会设置目录权限,我们无法修改。可是一般/tmp目录不会被设置权限,这和Windows下的tmp和回收站是类似的。
Windows系统提权
Windows的提权exp一般格式为MS08067.exe这种格式,Windows系统漏洞微软的漏洞编号命名格式为:
MS16001
其中:
-
MS Micosoft的缩写,固定格式
-
16 表示年份,即2016年发布的漏洞
-
001 表示顺序,即当年度发布的第1个漏洞
Windows提权exp使用方法:
将exp执行即可,一般情况下是使用cmd.exe来执行
在日常渗透测试过程中,我们常常会先是拿到webshell再进行提权
所以提权脚本也常常会被在webshell中运行使用
那么我们如何知道使用哪个exp来提权呢?
使用systeminfo命令或者查看补丁目录,查看补丁记录,来判断有哪个补丁没打,然后使用相对应的exp进行提权(就是这么简单繁琐)
一般的提权的过程是:
-
先找可写目录
-
上传cmd.exe、提权exp等文件
-
使用exp进行提权,然后可以进行加账号等操作
数据库提权
数据库提权就是利用执行数据库语句、利用数据库函数等方式提升服务器用户的权限
MySQL的提权一般是使用自定义函数提权或mof提权
而MsSQL的提权一般是调用xp_cmdshell函数来提权。
数据库提权首先我们要先有能力登入数库
所以通常我们拿到webshell之后要去网站目录去找数据库连接文件,常在形如xxx.conf或conf.xxx文件中
数据库提权的方法各种各样,这里就不罗列了,感兴趣的可以扫一下
在我们获得高权限的账户之后
获取高权限账号之后
在Windows中可以下载sam文件用SamInside来破解管理员的密码
也可以从诸如FTP等软件中导出FTP的账号密码等等的敏感信息
更可以从系统的缓存中找到一些系统的密码等等
之后你可以留个后门,或者也可以安装一个键盘记录器等等。
使用metasploit 利用MS08-067渗透攻击xp系统全过程
利用此漏洞可实现对靶机的监控和控制。