攻防世界 php2

打开靶场,显示:你能浏览这个网站吗?

 

查看源代码以及f12后没有看到想要的信息,进入index.php页面也没有变化其实这里需要有一个知识点要了解:

后缀名为.phps的文件:phps即php source,phps文件就是php的源代码文件,通常用于提供给用户查看php代码,因为用户无法通过web浏览器直接查看到php文件的内容,所以需要用phps文件代替。其实网站的提示信息也暗示了我们需要查看.phps文件

了解这一知识点后,我们进入index.phps文件

 

 

 进行代码审计:

①传的参数id不能为admin;

②参数id会进行一次URL解码;

③进行URL解码后的id如果等于admin,回显flag;

根据以上三个条件,我们先初步构造payload:?id=%61dmin。

注意:.phps文件是无法接收参数的,所以我们在传递参数时还是需要在index.php文件下

 

 

但是网页却没有回显,这里又不得不提到另一个知识点了:

在传入参数时,浏览器会对非ASCII编码进行一次urlencode,结果在代码执行时,相当于id还是admin,所以我们在传参时需要进行两次URL编码

再次构造payload:?id=%2561dmin

 

 

 

 

 

 

 

 

posted @ 2021-09-21 14:34  r1kka  阅读(111)  评论(0编辑  收藏  举报