![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PHP
文章平均质量分 62
hangshao0.0
道阻且长,行则降至。
展开
-
攻防世界-Web进阶区-unserialize3
之前其实就记录过一篇反序列化的。PHP反序列化-(web_php_unserialize)那个反序列化的题目,比这个复杂一些。既然好久没练,而且在攻防世界上看到了这个 unserialize3 的题目,就复习一下反序列化吧。先 new 一个对象,然后将其序列化,代码如下:序列化的结果如下: 表示序列化的对象中只有一个属性,如果待反序列化的字符串中,属性个数与实际不符合,则 失效。因此,将 改为 绕过 。传参结果如下:......原创 2022-06-14 15:12:15 · 616 阅读 · 0 评论 -
Python连接PHP木马的后续分析(书接上回)
前面写的:Python连接PHP木马,并加密传输数据如果在服务器上写入最经典的那个一句话木马 ,然后传一个 命令,不进行加密,代码如下:那么抓取的流量如下:如果先进行 AES 加密,再使用 base64 编码,代码如下:那么抓取的流量如下:可以看出加密与不加密的效果对比。其实可以看到,我在 Python 代码里实现了加密,在 PHP 木马中实现了解密,因此,也就变成了 。如果仅仅通过一句话实现各种功能,同时还要实现流量的混淆该怎么做呢?那不就是蚁剑吗?(蚁剑本身是不加密的)虽然蚁剑可以通过一句话原创 2022-06-10 10:19:20 · 813 阅读 · 0 评论 -
Python连接PHP木马,并加密传输数据
前面写过两篇,但写的不多。使用python连接JSP一句话木马使用burpsuite对python的post请求进行抓包今天想起来,于是整合一下,再搞个加密。base64先是在 Linux 虚拟机里面写个 “两句话木马”。对传参进行一个 base64 解码,这就意味着在 Windows 本机上要进行一个 base64 编码。import requestsimport base64url = str(input('目标URL:')) # http://192.168.xxx.原创 2022-05-26 10:50:17 · 1820 阅读 · 1 评论 -
BugkuCTF-web24(解题思路及步骤)
看题到处找,都没有额外信息抓包发现“链接”那个地方隐藏了一个a标签,点击跳转,得到代码分析代码<?phpif(isset($_GET['v1']) && isset($_GET['v2']) && isset($_GET['v3'])){ $v1 = $_GET['v1']; $v2 = $_GET['v2']; $v3 = $_GET['v3']; if($v1 != $v2 && md5($v1)原创 2021-04-14 15:50:38 · 2461 阅读 · 2 评论 -
BugkuCTF-web21(详细解题思路及步骤)
目录审题F12获取信息Burp suite抓包解码分析PHP代码构造payload审题题目并没有什么信息,只是鼓励你不要放弃,never give up。F12获取信息没有额外信息,刷新了几下,也没有出现新东西。Burp suite抓包提示了 1p.html ,于是把GET参数改为 1p.html ,得到一串JS代码解码于是,在线解码解码后仍然存在注释内容,尝试用base64解码解码之后,发现了新信息,出现了一些函数和判断语句,同时还有许多百分号原创 2021-04-07 14:35:41 · 2910 阅读 · 5 评论 -
PHP中数组的相关处理函数
之前一次CTF的web题全部跟PHP有关,感觉学会PHP代码审计刻不容缓,那么就先从与数组有关的函数开始吧array_values(array)array_values() 函数返回一个包含给定数组中所有键值的数组,但不保留键名,被返回的数组将使用数值键,从0开始并以1递增array_keys(array, value, strict)array_keys() 函数返回包含数组中所有键名的一个新数组参数描述array必需 规定数组value可选 您可以指定原创 2020-11-11 13:51:09 · 953 阅读 · 0 评论 -
PHP遍历数组的几种方法
for语句for ($i=1; $i<=5; $i++){ echo "数字".$i."<br/>";}Result: 数字1 数字2 数字3 数字4 数字5foreach语句$a = array('Tom','Mary','Peter','Jack');foreach ($a as $value) { echo $value."<br/>";}Result: Tom Mary P原创 2020-11-05 14:10:47 · 968 阅读 · 0 评论 -
CTFHub-web(文件包含)
文件包含PHP中的strpos()函数查找字符串在另一字符串中第一次出现的位置PHP中的$_REQUEST预定义的 $_REQUEST 变量包含了 $_GET、$_POST 和 $_COOKIE 的内容$_REQUEST 变量可用来收集通过 GET 和 POST 方法发送的表单数据$_REQUEST 变量既可以收集GET方法发送的数据,也可以接受POST方法接受的数据题目内容:php://inputphp://input特点如下:1)、Coentent-Type仅在原创 2020-10-21 16:38:48 · 1987 阅读 · 1 评论 -
羊城杯web(eazyphp)
题目环境file_put_contents()file_put_contents() 函数把一个字符串写入文件中构造payload在 url 中传参?content=<?php @eval($_GET["hangshao"]);?>&filename=index.php蚁剑连接拿到flag原创 2020-09-11 19:42:25 · 1082 阅读 · 0 评论 -
PHP反序列化-(web_php_unserialize)
题目内容代码分析可以很明显地看出这是一道PHP反序列化地题目首先判断当前是否存在 GET 参数 ” var ” , 若存在则对其进行 Base64 解码后存入 $var 变量 . 若不存在则输出当前页面源码对 $var 进行一个正则过滤 , 若通过正则过滤 , 则对其进行反序列化操作,否则响应提示信息1. 题目中给出一个 Demo 类 , 需要注意一下其中三个魔术方法__wakeup() 该方法是PHP反序列化时执行的第一个方法 , unserialize()会先检查是否存在 __原创 2020-07-13 14:51:40 · 1764 阅读 · 9 评论 -
CTF-web(web_php_include)
1.题目信息2.代码理解3.抓包因为strstr()函数对大小写敏感,所以只需PHP://即可绕过将post请求的数据当作php代码执行,得到当前目录下的文件很明显flag在fl4gisisish3r3.php中,于是更改提交的php代码,得到flag...原创 2020-05-21 14:20:39 · 1822 阅读 · 0 评论 -
数据库课程设计基本框架(PHP+MySQL)
首先,PHP是世界上最好的语言,不接受反驳前期准备1.下载phpstudy2018https://www.xp.cn/download.html将其安装到D盘,然后启动MySQL和Apache服务2.MySQL或者Apache无法启动这些问题相信你能在网上找到解决办法,我当时也碰到过,但是通过搜索引擎都得到了解决3.打开MySQL数据库并创建数据库和表创建一个名为student的数据库在数据库中创建两张数据表(分别为stu和stu_score)如果你想直接使用文末的代码,那就跟我原创 2020-10-14 13:58:27 · 9995 阅读 · 7 评论