前言
黑客攻防是一个极具魅力的技术领域,但成为一名黑客毫无疑问也并不容易。你必须拥有对新技术的好奇心和积极的学习态度,具备很深的计算机系统、编程语言和操作系统知识,并乐意不断地去学习和进步。
如果你想成为一名优秀的黑客,下面是10种最重要的基础条件,请认真阅读:
1.了解黑客的思维方式
我们生活中用到的网站、软件等,都是由程序员编写的代码构成的。
这些代码在设计的过程中,都是基于一种正向的逻辑进行的,为了实现某个目的,完成某个操作的流程或数据传输逻辑。
而黑客的思维是逆向的,他们会去分析目前这个操作流程或数据传输逻辑中,是否存在一些验证不严谨或者隐秘信息被泄露的风险,并加以利用,从而绕过正常的操作逻辑达到未授权访问或操作的能力。
通俗点说,程序员是造房子的,而黑客则是看看房子是不是哪里漏了个风,缺了个口。翻进去为所欲为;有的甚至直接将房子拆了。
2.学习一门编程语言
黑客&网络安全工程师的武器也是代码。想要成为黑客或者网络安全工程师,首先要学会一门黑客需要的编程语言。
对于没有代码经验的小白,下面三项,是安全行业的从业者都最好能掌握的语言,锤炼一下自己编程的功底。
Shell脚本
掌握常用的Linux命令,能编写简单的Shell脚本,处理一些简单的事务。
C语言(C++可选)
C语言没有复杂的特性,是现代编程语言的祖师爷,适合编写底层软件,还能帮助你理解内存、算法、操作系统等计算机知识,建议学一下。
Python
C语言帮助你理解底层,Python则助你编写网络、爬虫、数据处理、图像处理等功能性的软件。是程序员,尤其是黑客们非常钟爱的编程语言,不得不学。
3.学习了解计算机网络知识
这是另一个必不可少的基础条件,学习网络知识,理解网络的构成。懂得不同类型网络之间的差异之处,清晰的了解TCP/IP和UDP协议。这都是在系统中寻找 漏洞的必不可少的技能。理解局域网、广域网,VPN和防火墙的重要性,精通Wireshark和NMAP这样的网络扫描和数据包分析工具等。
重点学习 OSI、TCP/IP 模型,网络协议,网络设备工作原理等内容,其他内容快速通读;
4.学习使用黑客常用操作系统
注重安全性的操作系统是黑客最好的朋友,因为它可以帮助他们发现计算机系统或计算机网络中的弱点。
Kali Linux
由 Offensive Security 开发并重写 BackTrack,Kali Linux 发行版在我们用于黑客目的的最佳操作系统列表中名列前茅。这个基于 Debian 的操作系统附带了 600 多个预装的笔测试工具,使您的安全工具箱更加丰富。这些通用工具会定期更新,并适用于 ARM 和 VMware 等不同平台。对于司法鉴定工作,此顶级黑客操作系统具有实时启动功能,该功能为漏洞检测提供了理想的环境。
除此之外还有Parrot Security OS、 BackBox、Samurai Web Testing Framework、Pentoo Linux、DEFT Linux、Caine、Network Security Toolkit、BlackArch Linux、Bugtraq、ArchStrike Linux、Fedora Security Spin等多款操作系统
5.学习密码技术
接着,来了解一些网络安全领域内经常打交道的编解码技术和加解密技术。包括base64编码、对称加密、非对称加密、哈希技术等等。
了解它们基础的概念、做什么用的,解决什么问题,最后再了解下工作原理。
推荐书籍:《加密与解密》
6.学习使用黑客渗透工具
网络协议攻击、Web服务攻击、浏览器安全、漏洞攻击、逆向破解、工具开发都去接触一下,知道这是做什么的,在这个过程中去发现自己的兴趣,让自己对网络安全各种领域的技术都有一个初步的认识。以下是常见的web渗透使用工具方法。
7.学习网络安全法
《中华人民共和国网络安全法》,是我们为了保障网络安全,维护网络空间主权和国家安全、社会公共利益、维护公民、法人和其他组织的合法权益,促进经济社会健康发展,制定本法。
我觉得作为一个技术人员了解和学习黑客知识是必要的,因为这样才能在日常工作中应对安全风险,在较高的安全意识上完成编程和运维工作;当然,如果你能成功掌握了一些黑客原理和技术,当你遇到攻击时,也不仅仅是严防死守,而是抓住内鬼,反将一军。
8.编写漏洞利用程序
实际动手,开发路线需要多写代码,阅读优秀开源代码,二进制路线多分析样本,编写EXP等等,渗透测试多拿网站练手(合法方式)等渗透实战操作,掌握渗透的整个阶段并能够独立渗透小型站点。
网上找渗透视频看并思考其中的思路和原理,关键字(渗透、SQL注入视频、文件上传入侵、数据库备份、dedecms漏洞利用等等);
自己找站点/搭建测试环境进行测试,记住请隐藏好你自己;
思考渗透主要分为几个阶段,每个阶段需要做哪些工作,例如这个:PTES渗透测试执行标准;
研究SQL注入的种类、注入原理、手动注入技巧;
研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架;
研究XSS形成的原理和种类,具体学习方法可以Google/SecWiki,可以参考:XSS;
研究Windows/Linux提权的方法和具体使用,可以参考:提权;
可以参考: 开源渗透测试脆弱系统;
打CTF,多参与一些网络安全比赛,接近实战的环境下锻炼动手能力
9.多向大佬学习
我们学习网络安全,很多学习路线都有提到多逛论坛,阅读他人的技术分析帖,学习其挖洞思路和技巧。但是往往对于初学者来说,不知道去哪里寻找技术分析帖,以下是个人搜集的一些安全圈大佬的个人微信公众号,可以看看大佬们最近在关注什么顺便学习下。
10.参与开源安全项目
开源安全项目可以帮助你测试和打磨你的黑客技术。这并不是一件容易的事,一些机构,如Mozilla、Apache等,会提供开源项目。参与这些项目,即使你的贡献很小,也会给你带来很大的价值。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……




还没有评论,来说两句吧...