黑客就像计算机幽灵一样,来无影去无踪。很多朋友对他们的高超技术羡慕不已,都想知道成为一名黑客,都需要掌握哪些基本技能。其实,总结起来也就以下十项基础技能。
1、专业英语
计算机最早诞生于美国,天生自带“英文”属性。虽然我们普通人可以使用简体中文,但人和计算机的交互命令全部都是英文命令。如果你连英文都不过关,那基本就谈不上当黑客了,尤其是计算机专业英语。
同时,最新的计算机技术资料基本都是英文版本的。等到翻译成中文,需要延后蛮长一段时间(1个月到1年不等)。而对于计算机漏洞来说,从发现开始计时,越往后越无效。因为安全厂商早就开始全面修补漏洞了。所以,黑客的英文必须好,而且经常浏览国外有名的英文网站。
2、网络协议
黑客之所以叫做黑客,就是因为他们“隐身”于计算机网络世界中。他们对各种网络协议都非常精通,并且能够熟练使用各种网络工具。这里说得精通不是懂的配置和优化,而是非常精通其工作原理。比如:
● OSI七层网络模型中网络数据传输的各种封装,包括数据帧、数据包、报文段等。黑客经常需要通过网络扫描嗅探,也需要通过篡改数据来进行伪装。
● TCP传输的三次握手、传输窗口、重传机制。黑客可以利用这些机制的弱点来制造麻烦。目前安全防御最难对付的就是DDOS攻击。
● MAC地址、ARP、静态路由、动态路由、VPN、VLAN、NAT等工作机制。黑客可以通过入侵网络设备来窃取重要的数据。
● IPv4、IPv6的规划、寻址技术,这是计算机在互联网上的身份证。黑客必须了解得明明白白。
● DHCP、DNS、RDP、SSH、FTP、telnet、SCP等常见的网络应用。黑客经常利用这些常见的网络应用的漏洞来达到入侵的目的。
● 其他网络技术
3、linux操作系统
操作系统是计算机的基础软件,而Linux系统又是服务器端使用较多的操作系统。作为一个合格的黑客,自然需要精通linux系统的基础知识。同时,由于linux的开放性,很多攻击性强的黑客工具都是在linux下开发出来的。黑客如果对linux不熟悉,就连驾驭黑客工具都比较费劲,更谈不上入侵了。当然,这里并不是说windows系统就不需要掌握,只是linux显得更为重要一点罢了。windows毕竟在桌面终端上使用也是很广泛的。
4、社会工程学
社会工程学是指通过各种社会机制(包括伪装身份沟通)来获得信息的手段。很多人觉得这个和黑客技术没啥关系,感觉更像是小偷、骗子之类的。其实不然,社会工程学是黑客攻击的常用手段。他们可以伪装成单位的维修电工,将机房的全部电力切断。也可以通过伪装维护人员致电来获取系统的远程登录账号、密码。这可比暴力破解密码来得轻松很多。所以,现在的网络安全也包括提高人们的安全意识。
5、数据库技术
数据库是业务系统存储重要数据的场所,而很多黑客的攻击目的就是为了获取有用的数据。所以,黑客必须掌握市面上主流的数据技术,比如:oracle、db2、mysql、ms-sqlserver等等。同时,数据库周边的相关软件技术也是黑客需要掌握的,比如:备份软件。
6、web应用
web应用因为是对互联网提供服务,通常是黑客攻击的首要目标。因为它是完全公开暴露在互联网上的应用,所以比较容易被攻击。黑客攻击成功后,可以通过web服务器一步一步突防到核心业务系统。很多不注重安全的中小企业,经常会碰到网站被篡改、被挂马。这些都是黑客行为所致。黑客通常非常熟悉HTML、ASP、JSP、PHP等语言。
7、加解密
信息加密原本是“间谍”为了交换信息最常用的手段,但现在的网络中已经普遍使用加密传输、数据加密等技术。黑客们在长期地破解加密的过程中,也学会了利用加密系统。比如:这些年流行的勒索病毒就是黑客将用户的重要数据进行了高强度加密,导致用户无法读取这些数据不得不缴纳“解密费”。所以,黑客对加密和解密技术也是必须掌握的,不然很难突破用户的安全体系。包括:对称加密的DES、AES;非对称加密的RSA、DSA;散列算法SHA和MD5等。
8、编程技术