首页 > 编程语言 >攻防世界ics-05(PHP伪协议读取文件+preg_replace函数任意代码执行)

攻防世界ics-05(PHP伪协议读取文件+preg_replace函数任意代码执行)

时间:2022-09-28 15:46:31浏览次数:51  
标签:函数 05 preg replace 代码执行 php 任意

第一步通过index.php?page=php://filter/convert.base64-encode/resource=index.php来获取源码,

第二步审计源代码发现了

 

 这里进入if只需在http请求头中加入 X-Forwarded-For:127.0.0.1 即可。

然后发现了preg_replace函数,这个函数在/e模式下会执行任意代码(详情原理自行百度)

也就是我们让pat和sub的位置字符串相等,在rep的位置写入我们的任意代码如:phpinfo()

payload示例:

 

标签:函数,05,preg,replace,代码执行,php,任意
From: https://www.cnblogs.com/meng-han/p/16738279.html

相关文章

  • P2254 [NOI2005] 瑰丽华尔兹
    P2254[NOI2005]瑰丽华尔兹设f[i][x][y]表示在第i个时段,钢琴在这个时段停止在(x,y)时的最大滑动激励转移:dir=1时f[i][x][y]=max{f[i-1][x+k][y]+k其中0<=k<=ed-st+......
  • 代码随想录第八天 |344.反转字符串 、541. 反转字符串II、剑指Offer 05.替换空格 、15
    第一题344.反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使......
  • 05
    今日内容垃圾回收机制1.引用计数系统会记录数据值所被引用的次数,若引用次数为零,系统则会认为该数据值为垃圾数据2.标记清除系统不会清除被引用的数据值,但......
  • AGC054D
    主要思路来自huzhaoyang大佬对于两个字符串\(s\)和\(t\)(保证其中每一种字符个数相同),定义\(s\)和\(t\)的相对逆序对数为\(s\)得到\(t\)的最少交换次数,显然同......
  • luogu P1052 [NOIP2005 提高组] 过河
    [NOIP2005提高组]过河题目描述在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧。在桥上有一些石子,青蛙很讨厌踩在这些石子上。由于桥的长度和青蛙一次跳......
  • Codeforces Round #105 (Div. 2) D. Bag of mice
    CodeforcesRound#105(Div.2)翻译岛田小雅D.Bagofmice出题人Nickolas巨龙和公主在纠结大年夜应该干什么。巨龙想去山上看精灵们在月光下跳舞,但公主只想早点睡......
  • javascript:页面中有多处window.onload时的处理(chrome 105.0.5195.125)
    一,js代码:<html><head><metacharset="utf-8"/><title>测试</title></head><body><script>//console.log("window.onload未执行前的值:"+window.onload);......
  • Java流程控制05(switch多选择结构)
    多选择结构还有一个实现方式就是switchcase语句switchcase语句判断一个变量与一系列值中的某个值是否相等,每个值称为一个分支语法:switch(表达式){casevalue......
  • Win10使用打印机0x0000011b错误 如何处理(没有KB5005565补丁如何解决??)
    1.排查问题win10连接打印机共享错误显示0x0000011b怎么解决?很多用户在更新了windows系统的最新补丁后,突然发现自己打开打印机的时候提示“无法连接到打印机,错误为0x000......
  • javascript: 自定义鼠标拖动的滑块slider(chrome 105.0.5195.125)
    一,js代码<html><head><metacharset="utf-8"/><title>测试</title></head><bodyonmousemove="divmousemoving()"onMouseUp="divmouseup()"><divstyle=......