CTF-Web-NSCTF-解密WP

题目链接-攻防世界-web2

知识考察:PHP代码审计、逆向加解密

解题思路

先搞清楚各个PHP函数的含义

<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";//密文 function encode($str){
$_o=strrev($str);//strrev反转字符串
// echo $_o; for($_0=0;$_0<strlen($_o);$_0++){ $_c=substr($_o,$_0,1);
$__=ord($_c)+1;//ord函数返回字符串中第一个字符的 ASCII 值
$_c=chr($__);//chr函数从不同 ASCII 值返回字符:
$_=$_.$_c;
}
return str_rot13(strrev(base64_encode($_)));//str_rot13函数编码解码字符串
} highlight_file(__FILE__);
/*
逆向加密算法,解密$miwen就是flag
*/
?>

逆向思维得出解码函数

function decode($str){
$_o=base64_decode(strrev(str_rot13($str)));
for($_0=0;$_0<strlen($_o);$_0++){
$_c=substr($_o,$_0,1);
$__=ord($_c)-1;
$_c=chr($__);
$_=$_.$_c;
}
return strrev($_);
} echo decode($miwen);
highlight_file(__FILE__);
?>

最新文章

  1. 1-7 basket.js localstorage.js缓存css、js
  2. .net core学习笔记(3)-依赖注入
  3. 在 ASP.NET MVC4 中使用 NInject
  4. MyBatis&lt;forEach/&gt;如何遍历Map参数里的值
  5. DHTML【6】--CSS
  6. WEB服务器1--开篇
  7. winform 窗口点击窗体任意位置移动窗体
  8. IP地址、子网掩码和地址分类
  9. 如何自定义Intent.createChooser的显示结果
  10. jsp/servlet中的编码问题
  11. [leetcode-581-Shortest Unsorted Continuous Subarray]
  12. 【深度学习系列】PaddlePaddle可视化之VisualDL
  13. Linux基础篇
  14. Install zeal on ubuntu16.04
  15. Linux拷贝U盘文件(命令行)
  16. Echarts . 在柱状图中添加自定义值 (键值对)
  17. 常用 blas 函数
  18. Docker 开发最佳实践
  19. PAT甲题题解-1088. Rational Arithmetic (20)-模拟分数计算
  20. HDU 4762 Cut the Cake (2013长春网络赛1004题,公式题)

热门文章

  1. 第十八章 vi/vim文本编辑器介绍
  2. C# 判断当前目录是否存在不存在则创建
  3. Jmeter入门(6)- 参数化
  4. ORA-12609报错分析
  5. BlockCanary界面卡顿检测
  6. D. Alyona and Strings 解析(思維、DP)
  7. Linux 系统基于 Hadoop 安装 Hive
  8. nb-iot技术能自组网吗
  9. lora传输模块的特点概述
  10. NB-IOT基站的优势和特点