黑客就像计算机幽灵一样,来无影去无踪。很多朋友对他们的高超技术羡慕不已,都想知道成为一名黑客,都需要掌握哪些基本技能。其实,总结起来也就以下十项基础技能。
计算机最早诞生于美国,天生自带“英文”属性。虽然我们普通人可以使用简体中文,但人和计算机的交互命令全部都是英文命令。如果你连英文都不过关,那基本就谈不上当黑客了,尤其是计算机专业英语。
同时,最新的计算机技术资料基本都是英文版本的。等到翻译成中文,需要延后蛮长一段时间(1个月到1年不等)。而对于计算机漏洞来说,从发现开始计时,越往后越无效。因为安全厂商早就开始全面修补漏洞了。所以,黑客的英文必须好,而且经常浏览国外有名的英文网站。
黑客之所以叫做黑客,就是因为他们“隐身”于计算机网络世界中。他们对各种网络协议都非常精通,并且能够熟练使用各种网络工具。这里说的精通不是懂得配置和优化,而是非常精通其工作原理。比如:
操作系统是计算机的基础软件,而Linux系统又是服务器端使用较多的操作系统。作为一个合格的黑客,自然需要精通linux系统的基础知识。同时,由于linux的开放性,很多攻击性强的黑客工具都是在linux下开发出来的。黑客如果对linux不熟悉,就连驾驭黑客工具都比较费劲,更谈不上入侵了。当然,这里并不是说windows系统就不需要掌握,只是linux显得更为重要一点罢了。windows毕竟在桌面终端上使用也是很广泛的。
社会工程学是指通过各种社会机制(包括伪装身份沟通)来获得信息的手段。很多人觉得这个和黑客技术没啥关系,感觉更像是小偷、骗子之类的。其实不然,社会工程学是黑客攻击的常用手段。他们可以伪装成单位的维修电工,将机房的全部电力切断。也可以通过伪装维护人员致电来获取系统的远程登录账号、密码。这可比暴力破解密码来得轻松很多。所以,现在的网络安全也包括提高人们的安全意识。
5、数据库技术
数据库是业务系统存储重要数据的场所,而很多黑客的攻击目的就是为了获取有用的数据。所以,黑客必须掌握市面上主流的数据技术,比如:oracle、db2、MySQL、ms-sqlserver等等。同时,数据库周边的相关软件技术也是黑客需要掌握的,比如:备份软件。
6、web应用
web应用因为是对互联网提供服务,通常是黑客攻击的首要目标。因为它是完全公开暴露在互联网上的应用,所以比较容易被攻击。黑客攻击成功后,可以通过web服务器一步一步突防到核心业务系统。很多不注重安全的中小企业,经常会碰到网站被篡改、被挂马。这些都是黑客行为所致。黑客通常非常熟悉html、ASP、JSP、php等语言。
信息加密原本是“间谍”为了交换信息最常用的手段,但现在的网络中已经普遍使用加密传输、数据加密等技术。黑客们在长期的破解加密的过程中,也学会了利用加密系统。比如:这些年流行的勒索病毒就是黑客将用户的重要数据进行了高强度加密,导致用户无法读取这些数据不得不缴纳“解密费”。所以,黑客对加密和解密技术也是必须掌握的,不然很难突破用户的安全体系。包括:对称加密的DES、AES;非对称加密的RSA、DSA;散列算法SHA和MD5等。
编程技术是计算机软件开发的必要技术。黑客们虽然不自己开发商业软件,但为了成功入侵系统,高级一点的黑客都会自己开发入侵工具。他们一般都擅长cgi、perl、php、Python等脚本语言或者编程方法,可以轻松用这些工具来编写代码。
逆向工程通常用于破解商业软件,而黑客则可以通过逆向工程来发现软件的漏洞。当然,黑客也可以通过逆向工程对现有病毒或者恶意软件中的功能进行升级或者重构,形成新的强攻击力的恶意软件。
真正的黑客除了成功入侵系统外,还需要消除自己的入侵痕迹,做到网络“隐身”。因为,计算机系统、网络系统、安全设备都有完备的日志系统,他们会记录一切对系统的操作。黑客如果无法消除自己的访问痕迹,就算成功入侵了也很容易被安全部门抓获。所以,黑客必须非常清楚网络的数字取证技术,要知道如何规避自己被取证。
黑客和安全既是相互对立的,也是相互转换的。以上技术本身并无对错,但如果用于黑客攻击就是违法行为。如果用于安全防御,那就是有益的行为。请技术男们不要轻易去从事黑客攻击。