攻防世界 | WEB2

本文介绍了两种解密方法来解决攻防世界WEB2问题。方法一是利用在线工具进行rot13解码、字符串翻转、base64解码和encode函数的反向解码。经过步骤后,密文成功转化为明文。方法二则通过编写自定义代码直接实现反向解密,最终获得flag:flag:{NSCTF_b73d5adfb819c64603d7237fa0d52977}。
摘要由CSDN通过智能技术生成

先来看一下代码

<?php
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";

function encode($str){
    $_o=strrev($str);
    // echo $_o;
        
    for($_0=0;$_0<strlen($_o);$_0++){
       
        $_c=substr($_o,$_0,1); //substr()函数返回字符串$_o的一部分,从$_0开始,截取1个字符的长度
        $__=ord($_c)+1; //ord() 函数返回字符串中第一个字符的 ASCII 值
        $_c=chr($__); //chr() 函数从指定 ASCII 值返回字符
        $_=$_.$_c;  //.用来连接字符串 
    } 
    return str_rot13(strrev(base64_encode($_)));
}

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

方法一:先用在线工具解码,再层层解密

只要按照php的加密方式反过来解密就可以了

具体流程:rot13解码——翻转字符串——base64解码——encode函数反向解码

密文:a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws

rot13解码:n1mYotDfPRFRVdEYjhDNlZjYld2Y5IjOkdTN3EDNlhzM0gzZiFTZ2MjO4gjf

翻转字符串

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值