using System;\x0d\x0ausing System.Text;\x0d\x0ausing System.Security.Cryptography;\x0d\x0a\x0d\x0anamespace MD5\x0d\x0a{\x0d\x0a public class MD5\x0d\x0a {\x0d\x0a // 32 位\x0d\x0a public static String Encrypt(String s)\x0d\x0a {\x0d\x0a MD5 md5 = new MD5CryptoServiceProvider();\x0d\x0a byte[] bytes = System.Text.Encoding.UTF8.GetBytes(s);\x0d\x0a bytes = md5.ComputeHash(bytes);\x0d\x0a md5.Clear();\x0d\x0a\x0d\x0a string ret = "";\x0d\x0a for (int i = 0; i
回答于 2022-12-11
sqlmap检测过的站都会生成一个文件夹存放记录文件,存放在C:\Users\Administrator\.sqlmap\output目录下,你可以手工删除某一个检测过的站,也可以用“--purge-output”命令来清除所有记录。至于破解md5嘛,你dump完密码的时候会提示你是否解密md5,选Y的话就会开始解密,其实是sqlmap自带的一个字典,拿dump出来的md5跟字典里的md5匹配,可以解一些简单的密码,总之成功率不高啦。
MD5解密方法\x0d\x0a我在存储数据库的时候,通过md5加密方法将字段进行加密,当我在读取该字段时如何正确的读取原来的值啊\x0d\x0a------解决方案--------------------\x0d\x0a没办法,MD5是不可逆的。\x0d\x0a你需要使用可逆加密算法。\x0d\x0a------解决方案--------------------\x0d\x0a插入表中的时候md5加密\x0d\x0a比如:\x0d\x0a$sql= "insert into register(names,pswd,repswd) values( '$_POST[names] ',md5( '$_POST[pswd] '),md5( '$_POST[repswd] ')) ";\x0d\x0a$qid=mysql_query($sql);\x0d\x0a读取的时候\x0d\x0a$pswd=empty($_POST[ 'pswd '])? ' ':md5($_POST[ 'pswd ']);\x0d\x0a------解决方案--------------------\x0d\x0a如果业务要求可还原,那么不要采用MD5,请使用可逆加密算法,如DES加密。\x0d\x0aMD5为不可逆散列算法,可用于存储用户密码,存储后不需要永远不需要知道明文。密码比较时只需将用户输入的密码再次转成MD5码与存储的相比较即可得知用户输入密码是否正确。\x0d\x0alinux/unix操作系统一般采用MD5进行用户密码加密。\x0d\x0a------解决方案--------------------\x0d\x0aMD5目前所谓的破解只是采用碰撞法找到了对等因子。\x0d\x0a比如:string1的MD5码为MD1,而现在我们做到的只是又找到了一个string2,它的MD5码也是MD1。\x0d\x0a结果就是:用户登陆某采用MD5加密的系统时,本来密码是12345,现在可能用abcde也能登陆。\x0d\x0a想想可能还原吗?如果可以还原,那天大的信息也能用32位长的字符串表示了,这不成了超级压缩算法了吗,整个宇宙的信息都可以用32位长表示了。不可逆的!