利用漏洞提权实例
前提:已渗透进一个XP或2003系统
一、实验目标漏洞:Ms11-080
补丁:Kb2592799
漏洞信息:https://technet.microsoft.com/library/security/ms11-080
1、通过searchsploit命令查找漏洞 【注:查找漏洞的命令行窗口要能完全显示Title和Path】
#有python和ruby两种漏洞利用代码,可根据自己喜好选择,本章选择python
2、通过Sandi查找
查看漏洞利用代码的描述
#通过Afd.sys文件进行提权
###使用32位系统,XP和2003,Eng:表示适用于英文版操作系统,可能在中文上不适用
将18176.py拷贝到XP系统中【注:XP需安装python环境】
中文版XP测试
可能出现蓝屏,无法实现提权!
1、使用英文版XP进行本次实验
2、通过修改代码,使其支持中文版
#1.若系统补丁已安装,先卸载,再进行操作
#2.若系统没有自己需要的编译环境,可先把代码编译成exe执行程序
如何python脚本编译成exe执行程序?
1、下载Pyinstaller【https://pypi.python.org/pypi/PyInstaller/2.1】【功能:将其他python脚本转换为exe】
2、下载Pywin32【http://sourceforge.net/projects/pywin32/files/pywin32/Build%20219/】
先安装pywin32,再将解压的pyinstaller放到python27中,将18176.py放到pyinstaller文件中,命令行模式下运行
#..python.exe 指定系统路径
#--onefile 把库文件集成到生成的exe文件
为防止在上传到其他系统时,被杀毒软件拦截,先进行压缩
普通用户无法在C盘写入,解压到临时文件temp
提权成功,创建属于自己的管理员账号,或者提升自己为管理员权限
例如:#net user b b /add #net localgroup Administrators a /add
二、实验目标漏洞:MS11-046
实现DOS【蓝屏、重启】
三、Ms14-068【可将域中一台主机的普通用户提升到域管理员权限】
在企业环境中域环境管理电脑,可通过拿到域控制管理员账号权限,可控制整个域环境的电脑,甚至能控制到其他资源【如:财务系统】##微软在域方面的安全问题比较少
搭建域【域:http://www.cnblogs.com/suizhikuo/articles/2117831.html】
必须使用server版操作系统作为域控制管理【如:2003】
http://www.poluoluo.com/server/200809/46996.html
##需使用静态ip地址,并且自己作为自己的DNS服务器
分配域账号密码给个人,限制可操作资源
Kali集成漏洞脚本
##生成票据文件
ms14-068.py -u user@lab.com -s userSID -d dc.lab.com
TGT:域环境的身份验证文件
#发起会话请求,获取票据
python 35474.py -u u1@lab.com -s S-1-5-21-1174131619-510335615-37023860181-1107 -d 192.168.1.145#域里面的SID -d 指定域控制器名称/IP【除非kali也指定同一个DNS,否则需要写入IP地址】登录本机,将票据文件拷贝到XP
命令行下提权
mimikatz.exe log "kerberos::ptc TGT_user@lab.com.ccache" exit
【若出现异常,可尝试重启解决】
###在客户端XP系统,不能成功,需在Win7上进行
使用mimikatz
##kali中若提示出现缺少库文件
在linux平台上,利用漏洞提权
CVE-2012-0056【http://cve.scap.org.cn/CVE-2012-0056.html】
/proc/pid/mem #proc目录为系统启动过程中生成的临时目录,储存大量的内存目录
内核版本高于2.6.39的linux都存在该漏洞【最新的内核版本已修复】
靶机:Ubuntu11.10【旧版ubuntu(已停止更新):http://old-releases.ubuntu.com/releases/11.10/】
拷贝18411.c 到ubuntu系统
scp /usr/share/exploitdb/platforms/linux/local/18411.c admin@192.168.1.145:/home/admin/
授权chmod、运行./exp
##ubuntu早期版本中,不集成gcc命令,需手动更新
sudo apt-cdrom add && sudo apt-get install gcc
##当更新源找不到包,可用安装光盘作为更新源【光盘自带有各种包,但版本不一定是最新】
选择ISO文件,通过mount命令,挂载到mnt目录或media目录【sudo mount /dev/cdrom /media/cdrom】然后指定更新源【sudo apt-cdrom add】