url 数字 加密_四种加密类型总结

网安引领时代,弥天点亮未来   

e8ec19c6968e39157be857b300ec6c23.png 文章缘由

       实验室最近在进行靶场渗透测试,在靶场攻击寻找flag过程中,不同靶场涉及不同加密类型,虽然对常见加密类型了解过,但没有深入研究过,因此通过这篇文章记录下学习心得。

e8ec19c6968e39157be857b300ec6c23.png Base64加密

       Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。

       密文字符串的长度特征为4的整数倍。字符串的符号取值只能在A-Z, a-z, 0-9, +, /, =共计65个字符中,且=如果出现就必须在结尾出现。

       如果要编码的字节数不能被3整除,最后会多出1个或2个字节,先使用0字节值在末尾补足,使其能够被3整除,然后再进行base64的编码。在编码后的base64文本后加上一个或两个“=”号,代表补足的字节数。

       下面为转化过程:

99c99fa7473187630bead482d3cd10ff.png

    可以使用下面网站实现解密:

    https://emn178.github.io/online-tools/base64_decode.html

    https://base64.us/

e8ec19c6968e39157be857b300ec6c23.png URL加密

      URL编码是一种浏览器用来打包表单输入的格式。浏览器从表单中获取所有的name和其中的值,将它们以name/value参数编码(移去那些不能传送的字符)作为URL的一部分或者分离地发给服务器。

      任何特殊的字符(就是那些不是简单的七位ASCII,如汉字)将以百分符%用十六进制编码,当然也包括=,&和%这些特殊的字符。

      其实URL编码就是一个字符ascii码的十六进制。不过稍微有些变动,需要在前面加上“%”。比如“\”,它的ascii码是92,92的十六进制是5c,所以“\”的URL编码就是%5c。该编码的特征为一串%加两个字符的样式。

      当然复杂程度又分为保留字符不编码、数字字母不编码、所有字符都编码三种。

       如下图展示:

bbc321e8b25ebb0bcccac1413c513985.png

f9be12d4706c8f3810e7db6d7a485d2a.png

0018788f614e7dd90c91d1f60b3f8080.png

    可以使用下面网站实现解密:

    http://tool.chinaz.com/tools/urlencode.aspx

    http://web.chacuo.net/charseturlencode

e8ec19c6968e39157be857b300ec6c23.png Hex加密

      十六进制(简写为hex或下标16)在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,这些称作十六进制数字。特征:密文开头是0x后边是一串数字和字母。

      CTF中常使用WinHex工具查看十六进制数据和ascii码、 修改文件头、 修改图片IHDR等。例如直接使用该工具打开图片,直接搜索可能就能得到flag,而且一般存在文本末尾,因此下图再进行ASCII解码便能得到最后结果。

db20d74a890358eafc1eeadbb9f125e6.png

    当然也可以使用如下网站解密:

    http://www.nicetool.net/app/hex_encode.html

    https://www.hexator.com/decode/paste/

e8ec19c6968e39157be857b300ec6c23.png Rot加密

       ROT5、ROT13、ROT18、ROT47 编码是一种简单的码元位置顺序替换暗码。此类编码具有可逆性,可以自我解密,主要用于应对快速浏览,或者是机器的读取,而不让其理解其意。

  • ROT5:只对数字进行编码,用当前数字往前数的第5个数字替换当前数字,例如当前为0,编码后变成5,当前为1,编码后变成6,以此类推顺序循环。

  • ROT13:只对字母进行编码,用当前字母往前数的第13个字母替换当前字母,例如当前为A,编码后变成N,当前为B,编码后变成O,以此类推顺序循环。

  • ROT18:它是将ROT5和ROT13组合在一起,为了好称呼,将其命名为ROT18。

  • ROT47:对数字、字母、常用符号进行编码,按照它们的ASCII值进行位置替换,用当前字符ASCII值往前数的第47位对应字符替换当前字符,例如当前为小写字母z,编码后变成大写字母K,当前为数字0,编码后变成符号_。

    可以使用下面网站进行解密:

    https://www.qqxiuzi.cn/bianma/ROT5-13-18-47.php

    http://www.mxcz.net/tools/rot13.aspx

e8ec19c6968e39157be857b300ec6c23.png 总结

      上面简单讲解了Base64、URL、Hex和Rot四种加密类型。当练习靶场过程中可能会存在多次加密的形式,因此还需要不断总结开阔思路。例如下图靶场中的一个flag为混合加密类型,通过HEX—base64—URL三次解密后得到最后结果。

655af5303ba27ad37e362fe7b16aa2eb.png

eafba0ea10bbeeca06b13b93b6013428.png

b1dfee2025c633e2183981099cec9451.gif 

知识分享完了

喜欢别忘了关注我们哦~

予以风动,必降弥天之润!

   弥  天

安全实验室

c503d82c02f5017d2dbc8c7099b587fb.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值