不请自来
因为电影情节需要,将一个本不神秘的职业神秘化了,满屏滚动的代码,一身黑的打扮,一台笔记本,动动手指就能黑掉一个网站、系统、甚至是入侵xx机构或是研究所,导致了很多人对黑客心生向往,那么你真的了解黑客吗?我们先来看看最黑客都要学习些什么?
1、编程语言
这个应该是最基础的了,其实很多自诩为黑客的人,连编程语言都不懂,只会用别人开发好的软件进行攻击,这种人并不是黑客,也没人承认他们这个黑客的称谓,一切都是他们的一厢情愿,叫他们脚本小子会更符合他们,真正的黑客不止要懂像Java、C、C++这样的语言,更多的是要学会汇编语言。
2、操作系统
如果你认为黑客的工作都是在windows下进行那你就大错特错了,windows虽然现在的稳定性有了很大的提升,但是还是会出现蓝屏的情况,你可以想一下一名黑客正在进行入侵工作,结果突然蓝屏了,是不是有点喜感,黑客最喜欢的操作系统-->Kali也就是linux。
3、网络编程技术
说到黑客编程,估计大家都知道,要远程通信和控制,网络技术是必备的,你不只是需要了解和学习基本的TCP/IP协议,还有上层的各种应用层协议。比如你听到过ICMP木马吧、你发送邮件需要知道SMTP和POP3协议吧,你要下载和上次文件,需要知道FPT/TFTP、HTTP协议吧。在特定情况下,甚至还需要构造网络包,这些都要求你对网络相关知识和编程有了解。否则要写一个扫描器,漏洞检测工具是不可能完成的,尤其是现在网络这么发达,不像早期很多黑客程序通过直接接触媒介进行活动,基本都是网络连接。
4、熟悉可执行文件格式
如果要完成函数调用的截获,增加、减少第三方应用程序的功能,或者传播你自己的xx东西到其他进程,你需要对可执行文件比较了解,对执行文件的加载过程,动态库函数是如何注册到执行文件的流程有清楚认识。要完成典型感染其他程序,这个也是必不可少的,这部分和汇编知识是文件型病毒作者必不可少的学习内容。
还有很多这里就不一一赘述了,我这里有几张长图,可能不是很清晰,不过大概可以看看学习黑客的知识需求量
以上便是我的,如果觉得有道理,请点赞支持,谢谢!!
我是小黄鱼,关注我,带你领略不一样的科技领域!!!
黑客水平差距很大,初级和高级差距大概一图书馆书吧,脚本小子就会简单使用几个工具,其他啥都不懂,真正的高手知识量比较丰富,顶尖黑客要掌握很多技术,大概几百种吧,简单说说吧。
编程语言要掌握HTML,css,js,php,Java,c,c++,Python,shell,SQL,noSQL,Powershell,汇编语言。
说说数据库,要掌握mysql,sqlserver。redis,ES,等主流数据库要熟练掌握。
网络协议:计算机七层网络要非常非常熟悉,比如IP,tcp,UDP,DNS,http,smtp等等。
计算机基础要掌握,比如计算机组成原理,计算机体系结构,数据结构和算法这些大学基础必须熟练掌握。
再说说软件,要对EXE文件,安卓apk,Linux的elf文件结构很熟悉,要对各种文件格式的结构很了解。
说说加解密,aes算法,md5,rsa,摩斯电码等主流加密流程和解密方法要熟练掌握。
再说工具吧,kali里大概有600款工具,要熟练掌握其中的一半就差不多了也就说要学习三百款左右的工具使用。
说说漏洞,漏洞要求掌握形成原理,检测方法,修复建议,二进制漏洞有栈溢出,堆溢出,内存泄露等,操作系统现在有各种保护机制,要掌握和绕过方法,比如数据执行保护,内存地址随机化等等。web漏洞大概有几十上百种,要掌握它们的形成原理,检测方式和修复方案。
说说木马病毒,原理你要懂,要会手工查杀,要会免杀,就是各种木马病毒让杀软不报毒。另外你也要会编写这些。
说说核心点的漏洞挖掘和分析调试,分好多方向,安卓,web,二进制,工控,IoT等等等等吧。
还有各种防火墙安全设备的原理,企业安全建设,安全体系,等保,数据治理,法律法规。
算了太多了不想写了,大概还有一千字的技术名词,光各种技术的名词就能组成千字作文,不建议学网安,没干十年你成不了真正的专家
黑客≠骇客。二者的区别,请自行百度。
我们先来看看黑客的几个等级:
1级:脚本小子难度级别:1颗星 ??
脚本小子,无需多高深的专业知识,只需要你扛着他人的工具乱扫即可达到“黑客新闻”的部分水准,比如说黑掉XX高校官网。
2级:网络安全工程师难度级别:3颗星 ??????
能凭借自身的专业技能找到一份不错的工作,在高大上的办公楼领着不错的薪水。
3级:实验室研究员难度级别:3颗星 ????????????
作为一名研究员,你不仅要有熟练的代码审计能力,POC、二进制、脚本等等各个安全领域都要有所了解,更重要的是不能停下学习的步伐。
4级:安全大咖(比如道哥、TK教主、袁哥、日娃、余弦之流)难度级别:9颗星 ??????????????????
需要你在某一领域有自己的见解和认知,更需要有时间的积累和一定的天赋。比如COS余弦大佬就在Web安全方向有很深的道行。
那么作为一名黑客到底有多难呢?我们先来看看都需要掌握哪些知识?以Windows下Hacker学习发展路线为例,你不仅需要懂得C/C++,python,java这些基本语言,而且要有一门是自己拿得出手的,TCP/IP网络编程你也得在行,Linux、Windows系统你需要玩的比其他人溜,常用的加解密算法、渗透技巧更得了解。试想,你连最基础的TCP数据包都看不懂,又如何来编写网游外挂呢?
也许下面这段诗可以更好的阐释如何成为一名优秀的黑客。
To follow the path:(沿着这样一条道路)
look to the master,(寻找大师,)
follow the master,(跟随大师,)
walk with the master,(与大师通行,)
see through the master,(洞察大师,)
become the master.(成为大师。)最后,需要说的一点,也是最重要的一点,网络安全是把双刃剑,作为一名白帽子,法律是我们生活和工作中最重要的一项必备技能。
作为一名软件开发者,你会发现我头条名称也只敢自诩极客。
因为程序员距离黑客相差还是比较大的。作为Java程序员,可能只是会Java生态圈里的增删改查,会在平时项目组里写程序还一堆bug,看见一些牛的不行的框架只能叹为观止。
而黑客则不同,黑客懂编程,也懂攻防,你们程序员写的bug在他们眼里恰恰是钥匙,借此打开后台服务器的大门。
下图为全球网络攻击频率图:
成为程序员不难,少则三四个月的培训就可以做简单的工作,课程其实把一门语言语法基本摸透就可以,稍微懂点数据库,做个简单成型的毕业设计花一个月即可。
成为黑客难度大,不仅仅要熟练至少一种编程语言,还要懂操作系统,计算机网络,这些只是基本要求。真正的成为黑客怕是要花上三五年以上时间研究安全技术。不然只是用点小工具盗盗号,那种顶多算是骇客,黑客也会使用工具但是不依赖。
极客结语:
成为黑客究竟多难,看看你身边能认识几个黑客就知道了。
关注“极客宇文氏”,一名热心有料的软件工程师。