渗透测试之[加密算法]

前言:在渗透测试,常见的密码等敏感信息会采用加密处理,其中作为安全测试人员必须要了解常见的加密方式,才能为后续的安全测试做好准备,本次文章将讲解各种加密编码的知识,便于后期的学习。

常见的加密编码等算法解析

如:md5,sha,asc,进制,时间戳,URL,BASE64,unescape,AES,DES等

首先我们来介绍下md5加密:

一 md5加密是对字符或密码进行的16位或32位等加密方式! 一般在普通MDB数据库经常用到,比如论坛数据库等.有用!(MD5是不可逆的

二 加密解密并不矛盾,比如银行系统的128位加密现在谁可以轻易破的了呢?

虽然md5加密不算很难破,但一般也是穷破法,如果密码不是过于简单的 话,那么就很难破(使用工具)!比如密码为 dafsd63f43t5#$! 这样的密码经过md5加密之后就形成了一段密文.用穷破法的话这样一个密码也许要用几年的时间才可以破开~!

 

如上图的不可逆:这个是告诉我们不能通过密文去解密成明文也就是我们俗称的不可逆。 

现在说一下破解的方法:

 md5的解密方法的原理:

                因为我们知道MD5值是固定的,比如说你对1进行MD5加密,他会返回加密后的字符串:25f9e794323b453885f5181f1b624d0b ; 也就是说它加密这个字符串是不变得,也就是说只要我们收集一些MD5加密后的密文,然后保存在字典里面,只需要你将某个地方得到的MD5值放进去进行匹配,这样就可以得出明文。

                举个例子:你在A网站拿到了某管理员的密码,但是他的密码是采用MD5加密的,如:明文:admin 密文:21232f297a57a5a743894a0e4a801fc3(<---你拿到的密文),然后你将这串密文放到你的字典去匹配,你就破解了他的密码,得出明文admin。这样做有一个漏洞就是你的字典要足够多足够强大:不然对方密码设置难一点你是匹配不到的。

sha1,sha2,sha3,sha4加密:

 如上图:这是sha1的加密方式其实他和md5加密方式是差不多的,注意他们的区别:他们的区别就在它们的位数,我们这里主要介绍sha1的加密方式:sha1的加密后的位数是40位,sha2加密后的位数是64位,sha3加密后的密文是96位,sha4加密的位数是128位,因为他其实和md5加密方式差不多所以就不过多讲解,区分MD5和sha1到sha4的方法就是看他们的位数。

asc进制加密转换:

 这个进制加密其实挺简单的:这里就简单说一下他是怎么的得到密文的:(因为在实际情况中我们如果看到密文:1就是1,2就是2,很少用到进制加密)如上图我们知道明文是1,1的ascll码值为49,49转换为16进制就是31【能知道这个加密方式就行,一般实际情况基本不会用到这种加密】

base64加密:

我们首先来介绍base64:

Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。可查看RFC2045~RFC2049,上面有MIME的详细规范。
Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。采用Base64编码具有不可读性,需要解码后才能阅读。
Base64由于以上优点被广泛应用于计算机的各个领域,然而由于输出内容中包括两个以上“符号类”字符(+, /, =),不同的应用场景又分别研制了Base64的各种“变种”。为统一和规范化Base64的输出,Base62x被视为无符号化的改进版本

base64编码加密的特点:base64编码如果明文加密长度越长那么base64的长度也就越长:

如下图:

 其第二个特点就是base64编码的末尾有时会出现一个=,或者两个==,base64的位数是由(0-9.a-z,A-Z)它与MD5的区别是他还有大写的A-Z。他是一种编码也就是可以通过密文直接得到明文。

unescape编码加密:

简介:

原理:Escape/Unescape加密解码/编码解码,又叫%u编码,从以往经验看编码字符串出现有"u",它是unicode编码,Escape编码采用是 UTF-16BE 模式。这样一来问题非常简单了。Escape编码/加密,就是字符对应UTF-16 16进制表示方式前面加%u。Unescape解码/解密,就是去掉”%u”后,将16进制字符还原后,由UTF-16转码到自己目标字符。如:字符“中”,UTF-16BE是:6d93,因此Escape是“%u6d93”,反之也一样!因为目前%字符,常用作URL编码,所以%u这样编码已经逐渐被废弃了!

 unescaoe编码的特征:他的密文的第一位数是百分号%,第二位是u,一组代表的两个字符

如果字符为单数它前面就是00,如果是双数它就会在某位加上一个%u00如下图加密一个双数的明文:

 

AES加密原理:

友情链接:https://blog.csdn.net/jiamisoft/article/details/125783821

如果想要解密aes加密的话首先你必须要要知道密码,还有偏移量,因为其他的都可以一个一个尝试,然后破解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值