HashCat密码破解工具介绍hashcat号称世界上最快的密码破解世界上第一个和唯一的基于GPU的规则引擎免费多GPU高达128个GPU多哈希多操作系统Linux和Windows本地二进制文件多平台OpenCL和CUDA支持多算法资源利用率低基于字典攻击支持分布式破解等等hashcat目前支持各类公开算法高达247类市面上面公开的密码加密算法基本都支持在渗透测试中我们往往会得到很多hash需要去解密而一些在线的网站无法解密出来所以我们可以使用hashcat在本地进行密码恢复hashcat支持多种计算核心1. GPU 2. CPU 3. APU 4. DSP 5. FPGA 6. CoprocessorGPU的驱动要求1. AMD GPUs on Linux require RadeonOpenCompute (ROCm) Software Platform (1.6.180 or later) 2. AMD GPUs on Windows require AMD Radeon Software Crimson Edition (15.12 or later) 3. Intel CPUs require OpenCL Runtime for Intel Core and Intel Xeon Processors (16.1.1 or later) 4. Intel GPUs on Linux require OpenCL 2.0 GPU Driver Package for Linux (2.0 or later) 5. Intel GPUs on Windows require OpenCL Driver for Intel Iris and Intel HD Graphics 6. NVIDIA GPUs require NVIDIA Driver (367.x or later)就目前市面的笔记本完全够用比如下面是这个工具的下载和官网官网: https://hashcat.net/hashcat/Wiki: https://hashcat.net/wiki/下载地址:https://hashcat.net/files/hashcat-5.1.0.7zHashCat常见使用参数1. -a 指定要使用的破解模式其值参考后面对参数。“-a 0”字典攻击“-a 1” 组合攻击“-a 3”掩码攻击。 2. -m 指定要破解的hash类型如果不指定类型则默认是MD5 3. -o 指定破解成功后的hash及所对应的明文密码的存放位置,可以用它把破解成功的hash写到指定的文件中 4. --force 忽略破解过程中的警告信息,跑单条hash可能需要加上此选项 5. --show 显示已经破解的hash及该hash所对应的明文 6. --increment 启用增量破解模式,你可以利用此模式让hashcat在指定的密码长度范围内执行破解过程 7. --increment-min 密码最小长度,后面直接等于一个整数即可,配置increment模式一起使用 8. --increment-max 密码最大长度,同上 9. --outfile-format 指定破解结果的输出格式id,默认是3 10. -r 使用自定义破解规则破解模式有1. # | Mode 3. 0 | Straight字典破解 基于字典进行破解 4. 1 | Combination组合破解 基于多个字典进行破解 5. 3 | Brute-force掩码暴力破解 基于掩码设置进行破解 6. 6 | Hybrid Wordlist Mask字典掩码破解 7. 7 | Hybrid Mask Wordlist掩码字典破解输出格式1. 1 hash[:salt] 2. 2 plain 3. 3 hash[:salt]:plain 4. 4 hex_plain 5. 5 hash[:salt]:hex_plain 6. 6 plain:hex_plain 7. 7 hash[:salt]:plain:hex_plain 8. 8 crackpos 9. 9 hash[:salt]:crackpos 10. 10 plain:crackpos 11. 11 hash[:salt]:plain:crackpos 12. 12 hex_plain:crackpos 13. 13 hash[:salt]:hex_plain:crackpos 14. 14 plain:hex_plain:crackpos 15. 15 hash[:salt]:plain:hex_plain:crackpos支持破解的hash因为比较多所以就不一一列举可以hashcat64.exe –help查看1. - [ Hash modes ] - 3. # | Name | Category 4. 5. 900 | MD4 | Raw Hash 6. 0 | MD5 | Raw Hash 7. 5100 | Half MD5 | Raw Hash 8. 100 | SHA1 | Raw Hash 9. 1300 | SHA2-224 | Raw Hash 10. 1400 | SHA2-256 | Raw Hash 11. 10800 | SHA2-384 | Raw Hash 12. 1700 | SHA2-512 | Raw Hash 13. 17300 | SHA3-224 | Raw Hash 14. 17400 | SHA3-256 | Raw Hash 15. 17500 | SHA3-384 | Raw Hash 16. 17600 | SHA3-512 | Raw Hash 17. 10 | md5($pass.$salt) | Raw Hash, Salted and/or Iterated 18. 20 | md5($salt.$pass) | Raw Hash, Salted and/or Iterated 19. 30 | md5(utf16le($pass).$salt) | Raw Hash, Salted and/or Iterated 20. 40 | md5($salt.utf16le($pass)) | Raw Hash, Salted and/or Iterated 21. 3800 | md5($salt.$pass.$salt) | Raw Hash, Salted and/or Iterated 22. 3710 | md5($salt.md5($pass)) | Raw Hash, Salted and/or Iterated 23. 4010 | md5($salt.md5($salt.$pass)) | Raw Hash, Salted and/or Iterated 24. 4110 | md5($salt.md5($pass.$salt)) | Raw Hash, Salted and/or Iterated 25. 2600 | md5(md5($pass)) | Raw Hash, Salted and/or Iterated 26. 3910 | md5(md5($pass).md5($salt)) | Raw Hash, Salted and/or Iterated 27. 4300 | md5(strtoupper(md5($pass))) | Raw Hash, Salted and/or Iterated 28. 4400 | md5(sha1($pass)) | Raw Hash, Salted and/or Iterated 29. 110 | sha1($pass.$salt) | Raw Hash, Salted and/or Iterated 30. 120 | sha1($salt.$pass) | Raw Hash, Salted and/or Iterated 31. 130 | sha1(utf16le($pass).$salt) | Raw Hash, Salted and/or Iterated 32. 140 | sha1($salt.utf16le($pass)) | Raw Hash, Salted and/or Iterated 33. 4500 | sha1(sha1($pass)) | Raw Hash, Salted and/or Iterated 34. 4520 | sha1($salt.sha1($pass)) | Raw Hash, Salted and/or Iterated 35. 4700 | sha1(md5($pass)) | Raw Hash, Salted and/or Iterated 36. 4900 | sha1($salt.$pass.$salt) | Raw Hash, Salted and/or Iterated 37. 14400 | sha1(CX) | Raw Hash, Salted and/or Iterated 38. 1410 | sha256($pass.$salt) | Raw Hash, Salted and/or Iterated 39. 1420 | sha256($salt.$pass) | Raw Hash, Salted and/or Iterated 40. 1430 | sha256(utf16le($pass).$salt) | Raw Hash, Salted and/or Iterated 41. 1440 | sha256($salt.utf16le($pass)) | Raw Hash, Salted and/or Iterated 42. 1710 | sha512($pass.$salt) | Raw Hash, Salted and/or Iterated 43. 1720 | sha512($salt.$pass) | Raw Hash, Salted and/or Iterated 44. 1730 | sha512(utf16le($pass).$salt) | Raw Hash, Salted and/or Iterated 45. 1740 | sha512($salt.utf16le($pass)) | Raw Hash, Salted and/or Iterated 46. 14000 | DES (PT $salt, key $pass) | Raw Cipher, Known-Plaintext attack 47. 14100 | 3DES (PT $salt, key $pass) | Raw Cipher, Known-Plaintext attack 48. 14900 | Skip32 (PT $salt, key $pass) | Raw Cipher, Known-Plaintext attack 49. 15400 | ChaCha20 | Raw Cipher, Known-Plaintext attack 50. 2500 | WPA-EAPOL-PBKDF2 | Network Protocols 51. 2501 | WPA-EAPOL-PMK | Network Protocols 52. 16800 | WPA-PMKID-PBKDF2 | Network Protocols 53. 16801 | WPA-PMKID-PMK | Network Protocols 54. 7300 | IPMI2 RAKP HMAC-SHA1 | Network Protocols 55. 7500 | Kerberos 5 AS-REQ Pre-Auth etype 23 | Network Protocols 56. 8300 | DNSSEC (NSEC3) | Network Protocols 57. 10200 | CRAM-MD5 | Network Protocols 58. 11100 | PostgreSQL CRAM (MD5) | Network Protocols 59. 11200 | MySQL CRAM (SHA1) | Network Protocols 60. 16100 | TACACS | Network Protocols掩码设置1. l | abcdefghijklmnopqrstuvwxyz 纯小写字母 2. u | ABCDEFGHIJKLMNOPQRSTUVWXYZ 纯大写字母 3. d | 0123456789 纯数字 4. h | 0123456789abcdef 常见小写字母和数字 5. H | 0123456789ABCDEF 常见大写字母和数字 6. s | !#$%()*,-./:;?[]^_{|}~ 特殊字符 7. a | ?l?u?d?s 键盘上所有可见的字符 8. b | 0x00 - 0xff 可能是用来匹配像空格这种密码的下面举几个简单的例子来了解一下掩码的设置1. 八位数字密码?d?d?d?d?d?d?d?d 2. 八位未知密码?a?a?a?a?a?a?a?a 3. 前四位为大写字母后面四位为数字?u?u?u?u?d?d?d?d 4. 前四位为数字或者是小写字母后四位为大写字母或者数字?h?h?h?h?H?H?H?H 5. 前三个字符未知中间为admin后三位未知?a?a?aadmin?a?a?a 6. 6-8位字母密码--increment --increment-min 6 --increment-max 8 ?l?l?l?l?l?l?l?l 7. 6-8位数字小写字母密码--increment --increment-min 6 --increment-max 8 ?h?h?h?h?h?h?h?h再看几个例子一、数字破解(8位:12345678)1. hashcat64.exe -m 0 -a 3 25d55ad283aa400af464c76d713c07ad ?d?d?d?d?d?d?d?d二、小写字母(6位:abcdef)1. hashcat64.exe -m 0 -a 3 e80b5017098950fc58aad83c8c14978e ?l?l?l?l?l?l三、字母数字(8位:1a31fa1c)1. hashcat64.exe -a 3 -m 0 --force b54e53e2f21b7260df895bc885ceaa3e --increment --increment-min 1 --increment-max 8 ?h?h?h?h?h?h?h?h四、字典破解-a 0是指定字典破解模式-o是输出结果到文件中1. hashcat64.exe -a 0 ede900ac1424436b55dc3c9f20cb97a8 password.txt -o result.txt五、字典破解密码1. hashcat64.exe -m 0 -a 0 ./dict/hash.txt ./dict/password.txt -o result.txt字典组合破解1. hashcat64.exe -a 1 25f9e794323b453885f5181f1b624d0b pwd1.txt pwd2.txt字典掩码破解1. hashcat64.exe -a 6 9dc9d5ed5031367d42543763423c24ee password.txt ?l?l?l?l?lMysql4.1/5的PASSWORD函数1. hashcat64.exe -a 3 -m 300 --force 6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 ?d?d?d?d?d?dmssql1. hashcat64.exe -a 3 -m 132 --force 0x01008c8006c224f71f6bf0036f78d863c3c4ff53f8c3c48edafb ?l?l?l?l?l?d?d?dwordpress密码hash破解具体加密脚本在./wp-includes/class-phpass.php的HashPassword函数1. hashcat64.exe -a 3 -m 400 --force $P$BYEYcHEj3vDhV1lwGBv6rpxurKOEWY/ ?d?d?d?d?d?ddiscuz用户密码hash破解其密码加密方式md5(md5( p a s s ) . pass). pass).salt)1. hashcat64.exe -a 3 -m 2611 --force 14e1b600b1fd579f47433b88e8d85291: ?d?d?d?d?d?dZip压缩包破解使用zip2john获取密码哈希值设置hash类型win-zip 扫描模式掩码模式1. hashcat64.exe -m 13600 -a 3 $zip2$*0*3*0*b71633a9a7fc15682a0dad00d17f1a43*2cee*1d*4c55a370878091d08bd637730ae11c1abdcdbcdbe099d14c166826216d*770b0e7ff9bbc5e4149c*$/zip2$ ?d?d?d?d?d?d --show破解Windows hash使用mimikatz获取windows hash需要管理员权限1. mimikatz.exe log 2. mimikatz # privilege::debug 3. mimikatz # sekurlsa::logonpasswords 4. mimikatz # exitNT-hash:1. hashcat64.exe -a 3 -m 1000 b4814903533072474831d4791b7d4a9c ?l?l?l?d?d?d?s破解RAR压缩密码首先rar2john获取rar文件hash值下载地址获取rar文件的hash值rar2john.exe 1.rar结果1. rar:$rar5$16$639e9ce8344c680da12e8bdd4346a6a3$15$a2b056a21a9836d8d48c2844d171b73d$8$04a52d2224ad082e1. hashcat64.exe -a 3 -m 13000 --force $rar5$16$639e9ce8344c680da12e8bdd4346a6a3$15$a2b056a21a9836d8d48c2844d171b73d$8$04a52d破解office密码获取office的hash值python office2john.py 1.docx(这个脚本可以去github上下)结果1. 1.docx:$office$*2013*100000*256*16*e4a3eb62e8d3576f861f9eded75e0525*9eeb35f0849a7800d48113440b4bbb9c*577f8d8b2e1c5f60fed76e62327b38d28f25230f6c7dfd66588d9ca8097aabb91. hashcat64.exe -a 3 -m 9600 $office$*2013*100000*256*16*e4a3eb62e8d3576f861f9eded75e0525*9eeb35f0849a7800d48113440b4bbb9c*577f8d8b2e1c5f60fed76e62327b38d28f25230f6c7dfd66588d9ca8097aabb9 --force ?d?d?d?d?d?d破解WIFI密码首先先把我们的握手包转化为hccapx格式现在最新版的hashcat只支持hccapx格式了以前的hccap格式已经不支持了官方在线转化https://hashcat.net/cap2hccapx/1. hashcat64.exe -a 3 -m 2500 1.hccapx 1391040?d?d?d?d最后里面的工具zip2johnrar2johnoffice2john在johntheripper里面都有可以在这里下载链接https://pan.baidu.com/s/1yKmm4birQapA7Sx9I_VIaQ提取码q2jfhashcat规则编写知识只要有效利用Hashcat的规则就可对长度超过8个字符的密码进行高效破解但是尝试编写自己的规则可能会令人生畏。因为它太过灵活可配置性很高需要了解很多知识。官方提供了一些规则的说明在此我也会提供一些自己的总结。基础和调试我们要做的第一件事就是学习如何测试我们自己编写的规则。首先创建一个包含spring的简单字典echo spring dict.txt创建一个新文件这将是我们的规则文件我命名为test.rule。在规则文件中输入c并保存。注意c规则将单词的第一个字母大写其余字母小写因此spring应该成为Spring。测试如下hashcat64.exe -r test.rule --stdout dict.txtSpring以下是某些规则的基本说明基础请注意其中的大写规则如果字符串为!spring或!SPRING处理后仍然是!spring因为这个规则对数字或特殊字符第一个字符没有任何作用。可能我们最有用的规则是将字符附加到单词的开头或结尾。让我们看看以下这个规则它会对字典中的密码先全部小写再在末尾追加2019c $2$0$1$9其中c和$之间的空格只是为了便于阅读。如果在我们的test.rule文件中保存以上规则然后运行它将会得到hashcat64.exe -r test.rule --stdout dict.txtSpring2019将字符添加到字符串的开头则有点不同乍一眼可能看起来很奇怪。例如要将123添加到单词的开头则规则为^3^2^1你需要先反转要附加的字符串。如果你将上述规则添加到规则文件中然后运行就可以获得123spring。如果你想和其他规则结合起来那么你需要非常小心。因为如果你的规则是^3^2^1 c那么输出仍然是123spring因为此时首字符是1。要获得123Spring的输出需要使用规则c ^3^2^1。复制在需要设定很长的密码时人们通常会通过复制来解决这个问题。而且我发现这个重复次数经常是2次或是3次再配合上述的附加规则生成的密码往往非常有效。以下是针对“spring”一词中使用重复规则的一些示例1. c d $2$0$1$9 -- SpringSpring2019 2. d c $2$0$1$9 -- Springspring2019 3. c $2$0$1$9 d -- Spring2019Spring2019 4. $2$0$1$9 d c -- Spring2019spring2019替换你当然也可以使用替换规则替换字符。Hashcat自带的leetspeak.rule文件有一些简单的例子而Incisive-leetspeak.rule文件中有更多的示例。规则ss$会将password转换为pa$$word。其他规则还有很多其他规则可以用来构建你的字典但上述几个应该就能解决你的大部分问题根据我的经验。规则融合下一步我们需要对我们的规则有一个明确的要求它通常涉及某种模式。例如在某次破解密码的过程中我们率先知道密码是有一个固定的格式的例如像Spring2019那种模式第一个字符大写后面字符小写最后以数字结尾通常是年份或日期。因此如果我们想要生成这样模式的字典我们需要将第一个字符大写然后追加年份。最终规则看起来就像这样c $2$0$1$9运行后我们会得到Spring2019但是如果我们想要生成很多年份而不仅仅是2019年呢好吧我们必须遍历写出另我们想要的年份所对应规则。它们可能看起来像下面这样1. # Example: spring -- Spring2019 2. c $1$9$8$1 3. c $1$9$8$2 4. c $1$9$8$3 5. c $1$9$8$4 6. c $1$9$8$5 7. c $2$0$1$5 8. c $2$0$1$6 9. c $2$0$1$7 10. c $2$0$1$8 11. c $2$0$1$9但后来你又想在最后添加一个特殊字符因为你记得人们经常也这样做例如问号和感叹号于是你写了更多的规则1. # Example: spring -- Spring2019! 2. c $1$9$8$1$! 3. c $1$9$8$2$! 4. c $1$9$8$3$! 5. c $1$9$8$4$! 6. c $1$9$8$5$! 7. c $2$0$1$5$! 8. c $2$0$1$6$! 9. c $2$0$1$7$! 10. c $2$0$1$8$! 11. c $2$0$1$9$!此时你可能会强迫自己停止思考因为这样下去没完没了。因此你可能需要一些自动化的方法。在继续下一章自动规则生成前如下是我经常使用的一些规则以及示例1. # Example: thanksgiving -- thanksgiving1234 2. $1$2$3$4 3. $1$q$a$z 4. $z$a$q$1 5. $!$$#$$ 7. # Example: thanksgiving -- Thanksgiving1234 8. c $1$2$3$4 9. c $1$q$a$z 10. c $z$a$q$1 11. c $!$$#$$ 13. # Example: winter -- WinterWinter! 14. c d $! 16. # Example: winter -- Winter!Winter! 17. c $! d 19. # Example: winter -- Winterwinter! 20. d $! c 22. # Example: winter -- Winter!winter! 23. $! d c请记住通常我还会创建上述规则的许多变种例如在前面添加字符等。自动生成规则-date_rule.py用脚本去生成脚本通常是在明确知道所需的规则类型的情况下为了减轻手动操作节约时间而执行的操作。我自己编写了一个脚本文件能将各种格式的日期附加到每个规则中并且还能在每个字符串的开头或结尾添加字符。我能使用包括00-990101-13131010180-12312019甚至01011980-12312019中的所有内容同时又排除不是日期的数字最后还拥有足够的灵活性。我把这个脚本放在date_rule.py。我不会在此深入代码的工作原理你只需知道它能构建一个复杂的规则文件使得最后生成的密码既包含日期又有指定的字符串。以上这些只需要一点创造力和编程能力即可完成。如果你不擅长编程那就从现在开始锻炼吧。规则生成器——MaskprocessorHashcat团队中的某个开发人员开发了一个名为maskprocessor的工具可以让你轻松创建复杂的规则文件。可以点击这里下载。我们可以通过Maskprocessor利用掩码的方式帮助我们编写混合了众多规则的规则文件。下面是如何使用maskprocessor生成规则文件的示例最后生成的规则文件的具体作用分别是1.为字典中的每个密码的结尾附加一个任意字符列出所有情况2.为字典中的每个密码的结尾附加两个任意字符列出所有情况3.在结尾附加一个任意字符两个任意字母或特殊字符列出所有情况1. mp64.exe -o test.rule $?a 2. mp64.exe -o test.rule $?a $?a 3. mp64.exe -o test.rule -1 ?s?d $?a $?1 $?1现在我们执行的基于规则的攻击相当于同时运行三种不同的攻击。此时基于规则的攻击1. hashcat64.exe -a 0 -m 0 md5_hashes.txt wordlist.txt -r test_rule.rule等效于下面的三种攻击1. hashcat64.exe -a 6 -m 0 md5_hashes.txt wordlist.txt ?a 2. hashcat64.exe -a 6 -m 0 md5_hashes.txt wordlist.txt ?a?a 3. hashcat64.exe -a 6 -m 0 md5_hashes.txt wordlist.txt -1 ?s?d ?a?1?1虽然看起来更加简洁了但它并没有赋予我们新能力。但是我们还是可以发现它有两种非常重要的能力1我们可以在密码的两侧放置掩码。例如假设您想要将数字?d添加到字符串的开头将任何字符?a添加到结尾包括所有情况。生成这种规则的命令如下mp64.exe -o test1.rule ^?d $?a2你还想让字符串的首字母大写吗以下是生成规则文件的命令mp64.exe -o test1.rule c ^?d $?a也许你还想先首字母大写再复制一次然后在开头添加数字最后在结尾添加任何字符生成这样的规则文件的命令如下mp64.exe -o test1.rule c d ^?d $?a你可以进行你想要的任何操作当然产生的规则越多攻击所需的时间就越长。以下是我最喜欢的几个规则生成命令注意可能需要很长时间1. mp64.exe -o jake.rule c $?a 2. mp64.exe -o jake.rule c $?a $?a 3. mp64.exe -o jake.rule -1 ?s?d c $?a $?1 $?1 4. mp64.exe -o jake.rule c $?d $?d $?d 5. mp64.exe -o jake.rule c $?d $?d $?d $?d 6. mp64.exe -o jake.rule c $?d $?d $?d $?d $?d 7. mp64.exe -o jake.rule c $?d $?d $?d $?d $?d $?d 8. mp64.exe -o jake.rule c $?d $?d $?d $?d $?s 9. mp64.exe -o jake.rule -1 ?s?d c ^?1 10. mp64.exe -o jake.rule -1 ?s?d c ^?1 $?a 11. mp64.exe -o jake.rule -1 ?s?d c $?1 $?d $?d $?1 12. mp64.exe -o jake.rule -1 ?s?d c $?1 $?d $?d $?d $?d申明所分享内容仅用于网络安全技术讨论切勿用于违法途径网络安全学习路线学习资源网络安全的知识多而杂怎么科学合理安排下面给大家总结了一套适用于网安零基础的学习路线应届生和转行人员都适用学完保底6k就算你底子差如果能趁着网安良好的发展势头不断学习日后跳槽大厂、拿到百万年薪也不是不可能初级网工1、网络安全理论知识2天①了解行业相关背景前景确定发展方向。②学习网络安全相关法律法规。③网络安全运营的概念。④等保简介、等保规定、流程和规范。非常重要2、渗透测试基础一周①渗透测试的流程、分类、标准②信息收集技术主动/被动信息搜集、Nmap工具、Google Hacking③漏洞扫描、漏洞利用、原理利用方法、工具MSF、绕过IDS和反病毒侦察④主机攻防演练MS17-010、MS08-067、MS10-046、MS12-20等3、操作系统基础一周①Windows系统常见功能和命令②Kali Linux系统常见功能和命令③操作系统安全系统入侵排查/系统加固基础4、计算机网络基础一周①计算机网络基础、协议和架构②网络通信原理、OSI模型、数据转发流程③常见协议解析HTTP、TCP/IP、ARP等④网络攻击技术与网络安全防御技术⑤Web漏洞原理与防御主动/被动攻击、DDOS攻击、CVE漏洞复现5、数据库基础操作2天①数据库基础②SQL语言基础③数据库安全加固6、Web渗透1周①HTML、CSS和JavaScript简介②OWASP Top10③Web漏洞扫描工具④Web渗透工具Nmap、BurpSuite、SQLMap、其他菜刀、漏扫等恭喜你如果学到这里你基本可以从事一份网络安全相关的工作比如渗透测试、Web 渗透、安全服务、安全分析等岗位如果等保模块学的好还可以从事等保工程师。薪资区间6k-15k到此为止大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗【“脚本小子”成长进阶资源领取】7、脚本编程初级/中级/高级在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中面对复杂多变的网络环境当常用工具不能满足实际需求的时候往往需要对现有工具进行扩展或者编写符合我们要求的工具、自动化脚本这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中想要高效地使用自制的脚本工具来实现各种目的更是需要拥有编程能力.零基础入门建议选择脚本语言Python/PHP/Go/Java中的一种对常用库进行编程学习 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP IDE强烈推荐Sublime ·Python编程学习学习内容包含语法、正则、文件、 网络、多线程等常用库推荐《Python核心编程》不要看完 ·用Python编写漏洞的exp,然后写一个简单的网络爬虫 ·PHP基本语法学习并书写一个简单的博客系统 熟悉MVC架构并试着学习一个PHP框架或者Python框架 (可选) ·了解Bootstrap的布局或者CSS。8、超级网工这部分内容对零基础的同学来说还比较遥远就不展开细说了贴一个大概的路线。感兴趣的童鞋可以研究一下不懂得地方可以【点这里】加我耗油跟我学习交流一下。网络安全工程师企业级学习路线如图片过大被平台压缩导致看不清的话可以【点这里】加我耗油发给你大家也可以一起学习交流一下。一些我自己买的、其他平台白嫖不到的视频教程需要的话可以扫描下方卡片加我耗油发给你都是无偿分享的大家也可以一起学习交流一下。网络安全学习路线学习资源结语网络安全产业就像一个江湖各色人等聚集。相对于欧美国家基础扎实懂加密、会防护、能挖洞、擅工程的众多名门正派我国的人才更多的属于旁门左道很多白帽子可能会不服气因此在未来的人才培养和建设上需要调整结构鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”才能解人才之渴真正的为社会全面互联网化提供安全保障。特别声明此教程为纯技术分享本书的目的决不是为那些怀有不良动机的人提供及技术支持也不承担因为技术被滥用所产生的连带责任本书的目的在于最大限度地唤醒大家对网络安全的重视并采取相应的安全措施从而减少由网络安全而带来的经济损失