首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

记一次白嫖X站盒子App的渗透测试

发现该套源码对外交互最主要的是api.php这个文件。 注入什么的都使用了addslashes进行了过滤,暂时没仔细看,不过发现了一处上传非常可疑。...搜索getinfo发现了请求了一个网页然后进行rc4解密。直接访问是乱码,于是进行rc4解密 这其实也有点坑调用的是e4a的解密,于是我还特地下了个e4a利用e4a提供的rc4演示工具解密才成功 ?...然后从解密的文件中得到了appkey值,但是还需要个sign_t的值才行。 继续从源码中 ? ? 得到sign_t的值为10000,然后开始伪造签名 ? 把sign方法提取出来。 ?...其实在这套源码中存在一个vip.php文件 ? 获取ip的方法改xff头就可以伪造,也可以直接获取永久VIP。

2.6K20

解密混淆的PHP程序

0x01 背景 团队大佬在做PHP代码审计的时候发现PHP代码是被混淆过的。虽然可以通过自己手动解密可以还原原先的PHP代码,但是混淆过程比较复杂且自己写脚本还原非常麻烦。...0x02 PHP代码混淆原理 PHP代码混淆一般来说有两种方法: 需要PHP扩展 无需PHP扩展 本文我们主要讲解无需PHP扩展的代码混淆的解密。...不过,一般来说PHP的混淆都会通过多次eval来还原并执行php代码,所以我们可以通过hook PHP的eval函数来打印其参数来解密代码。...通过修改compile_string函数来打印eval的参数,代码如下 修改好之后重新编译php,运行被加密的php代码 解密后的PHP代码如下 可以看到已经完全还原了被混淆的PHP代码 通过编写php...0x04 利用其他函数还原的解密 其实,混淆代码的解密就是类似于代码执行。

3K50

Reverse: Level2 & 动态调试修改内存 Cracked by Eswink

由于以前接触过类似RC4自加密算法的样本文件,通常是将加密key加密保存在data或者text段,需要解密加密的PE文件时再对key进行解密调用 本题的Key已经给的很明显了,为下面这一段长度为300的字符串...的加解密其实就是:明文 ^ key = 密文,解密步骤也是相同,密文 ^ key = 明文 ,那么我们直接将密文传入内存或者读入再RC4解密,即可获得明文 Modify 跳过异或循环 我们观察伪代码,可以清楚的看到...修改为: jmp short loc_17A1 即为无条件跳转,保存完毕文件后再次通过IDA分析,即可看到循环消失 写入密文 尝试将密文转化为字符串通过gets的方式读入,但是转换后发现存在乱码和其他符号会直接被截断...在修改完内存并且单步rc4_crypt后,密文就成功解密了。...解密 解密后的字符串,使用LazyIDA插件将其转换为PythonList: decrypt = [76, 70, 92, 100, 105, 84, 77, 69, 110, 92, 92, 93,

83810

php des 加密解密实例

des加密是对称加密中在互联网应用的比较多的一种加密方式,php 通过mcrypt扩展库来支持des加密,要在Php中使用des加密,需要先安装mcrypt扩展库 1 $iv_size = mcrypt_get_iv_size...9 10 echo mcrypt_decrypt(MCRYPT_RIJNDAEL_256,$key,base64_decode($crypttext),MCRYPT_MODE_ECB,$iv);//解密后的内容...那么用这个算法加密时秘钥长度就是128bit的,比如 $key = 'fjjda0&9^$$#+*%$fada',是20个字符,那在实际加密的时候只用到前16个字符加密(16*8=128),不足128bit的php...有的时候做项目对接的时候,可能你用的是Php加密的,而对方用的是java写的,对接的过程中就发现机加密后的内容对方解密不了,这是因为Php跟java在实现这个算法的时候有差别,要想正确加密解密需要两边都做下处理...: PHP: 1 <?

2.8K100

经典的PHP加密解密算法

项目中有时我们需要使用PHP将特定的信息进行加密,也就是通过加密算法生成一个加密字符串,这个加密后的字符串可以通过解密算法进行解密,便于程序对解密后的信息进行处理。...笔者收录了一些比较经典的PHP加密解密函数代码,分享给大家。加密解密原理一般都是通过一定的加密解密算法,将密钥加入到算法中,最终得到加密解密结果。...$key : $GLOBALS['discuz_auth_key']);                // 密匙a会参与加解密        $keya = md5(substr($key, 0, 16...b),  //解密时会通过这个密匙验证数据完整性        // 如果是解码的话,会从第$ckey_length位开始,因为密文前$ckey_length位保存 动态密匙,以保证解密正确       ...;operation:判断是加密还是解密,E表示加密,D表示解密;key:密匙。

1.7K20
领券