攻防世界web2_"?php $miwen=\"a1zlbgqsceseiqrlwuqaymwlyq2l5vwbxqg_菜白小颗一的博客-程序员秘密

技术标签: 攻防世界wp  

web2

1、题目

<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";

function encode($str){
    $_o=strrev($str);    #反转字符串
    // echo $_o;
        
    for($_0=0;$_0<strlen($_o);$_0++){
       
        $_c=substr($_o,$_0,1);   #截取每一个字符
        $__=ord($_c)+1;			 #将每个字符的ASCII码加1
        $_c=chr($__);			 #将转换后的ASCII码转换成字符串赋值给$_c
        $_=$_.$_c;   			 #将所有的字母拼接出来给$_
    } 			
    return str_rot13(strrev(base64_encode($_)));  #函数返回值是rot13加密(反转字符(base64加密($_)))
}

highlight_file(__FILE__);
/*
   逆向加密算法,解密$miwen就是flag
*/
?> 

2、解密脚本

(1)PHP脚本

<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";
$str1=base64_decode(strrev(str_rot13($miwen)));
for($_0=0;$_0<strlen($str1);$_0++){
       
    $_c=substr($str1,$_0,1);   #截取每一个字符
    $__=ord($_c)-1;			 #将每个字符的ASCII码减1
    $_c=chr($__);			 #将转换后的ASCII码转换成字符串赋值给$_c
    $_=$_.$_c;   			 #将所有的字母拼接出来给$_
}
echo strrev($_); 			
?>

(2)Python脚本

# 将一个字符串依次经过rot13,反转和base64解密
#将解密后的字符串的每一个字符的ascii码减一再反转输出
import base64
from Crypto.Util.number import bytes_to_long,long_to_bytes
miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws"
def rot13_2(s,offSet=13):
    d={chr(i+c) : chr((i+offSet) % 26 + c) for i in range(26) for c in (65,97)}
    return ''.join([d.get(c, c) for c in s])
str1= rot13_2(miwen)
str2 =base64.b64decode(str1[::-1])
print(str2)
str2 = "{1}{0}{1}".format(str2,'"')
b = ""
for i in str2:
    a=chr(ord(i)-1)
    b = b + (a)
print(b[: :-1])
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_45554491/article/details/109286302

智能推荐

设计模式(三)-- 代理模式_messi 三个设计策略_leo_messi94的博客-程序员秘密

1.基本介绍代理模式:为一个对象提供一个替身,以控制对这个对象的访问。即通过代理对象访问目标对象。这样做的好处是:可以在目标对象实现的基础上,增强额外的功能能操作,即扩展目标对象的功能。被代理的对象可以是远程对象、创建开销大的对象或需要安全控制的对象代理模式有不同的形式,主要有三种静态代理动态代理(JDK代理)Cglib代理(可以在内存动态的创建对象,而不需要实现接口)2.静态代理2.1 基本介绍:静态代理在使用时,需要定义接口或者父类,被代理对象(即目标对象)与代理对象一起实现

用Android写的文字游戏_安也 i的博客-程序员秘密

闲来无事用Android写了个文字游戏,为了锻炼编写复杂逻辑的能力。 游戏长这个样子:自己玩了下还是挺爽的,可以随意定制各种角色和技能就像这样:接下来我会慢慢把完整代码都贴出来,附上讲解,主要讲解一路开发下来的思路。对这种游戏感兴趣的小伙伴可以帮我定制各种复杂的Hero和Skill。图片来源:http://www.laoshoucun.com/ 页游...

八皇后算法java实现_Floruit_Show的博客-程序员秘密

package recursion;import java.util.Arrays;public class Queen8 { private int max = 8;//设置皇后的最大个数 private int[] positon = new int[8];//皇后位置的存储容器 private int n = 0;//放置皇后的指针 public int count = 0; //计算皇后的位置 public void calculate()

matlab计算结果小数点后两位,matlab保留小数点后两位._老杨的诗和远方的博客-程序员秘密

这个问题我以前也回答过,matlab里面好像只能对总的有效位数进行控制,只对小数的话目前没有太好的办法.有些方法是可以用的,就是太复杂了,比如说方法1:digits+vpa 方法该方法是用digits()设定运算精度,然后用vpa获得所要的小数位数.该方法可以达到获取需要的任意位小数,但弊端很多,其1,运算精度里包含了整数部分,所以需要提取整数部分和分数部分,并计算整数部分的位数,以下程序中求le...

黑苹果用户必备 Hackintool 万能驱动神器_it记 hackint_mac小达人的博客-程序员秘密

Hackintool (瑞士军刀 ) 是一款黑苹果装机必备的工具。但需要注意的是 Hackintool 不是一个让你无脑使用的自动化补丁的工具,它是一个比较专业程序,在使用它之前,你最好备份驱动,以免操作失败,导致系统崩溃。支持功能:支持 Sandy Bridge, Ivy Bridge, Haswell, Broadwell, Skylake, KabyLake, Coffee Lake, Cannon Lake, Ice Lake 几乎所有的平台修补核显输出接口创建显存大小修改补丁E

随便推点

python示例_Python中的缩进示例_cumi6497的博客-程序员秘密

python示例It is generally good practice for you not to mix tabs and spaces when coding in Python. Doing this can possibly cause a TabError, and your program will crash. Be consistent when you code - cho...

Ubuntu右上角网络图标消失,无法联网_ubuntu网络消失_米斯特.G的博客-程序员秘密

ubuntu无法联网,修改配置文件也不行,可以试试还原网络配置

微信支付生成package参数缺失_chenYoper-陈永鹏的博客-程序员秘密

就是这个方法返回了flase,所以出错。把以上方法替换掉下面这个方法,就会知道具体是什么什么参数WxPayHelper.php文件 function check_cft_parameters(){ if($this->parameters["bank_type"] == null || $this->parameters["body"] == null || $this->pa

接口测试--用例篇,如何编写app接口测试用例?_Cloud_Huan的博客-程序员秘密

接口用例可以分为两个部分,单一的接口参数验证和多个关联接口的验证。包括我自己在内在做接口的初期,往往不自觉的把接口测试做成了业务测试,从而失去了接口测试的本质。这里以一个例子来说明:以我们公司的上传分享这个功能作为接口测试,这里的流程如下: 1.请求上传的key和地址 2.把资源的地址生成一个post,返回分享的地址(多张图片,都是必选,登录态,可选)我来说说以前我生成的用例: 用例1,请求上

boost serialization 序列化/反序列化 详细用法_boost序列化与反序列化_Max_Cong的博客-程序员秘密

##原文http://zh.highscore.de/cpp/boost/serialization.html第 11 章 序列化目录11.1 概述11.2 归档11.3 指针和引用11.4 对象类层次结构的序列化11.5 优化用封装函数11.6 练习 该书采用Creative Commons License 授权11.1. 概述Boos

google 的 gson json字符串转map 或 list_gson 解析 map字符串报错_想早点退休的程序员的博客-程序员秘密

google 的 gson json字符串转map 或 list这个两天维护项目,要不json字符串转为list 或者 map ,用 gson 解决,总是出现转换异常的问题,这个是泛型的问题例如:json字符串转listpublic static List jsonToList(String jsonStr){        List objList=null;    

推荐文章

热门文章

相关标签