黑客比程序员高在哪里?

黑客其实和一般的程序员一样,但是他们的关注点不一样。黑客关注的是如何破坏,通过这些有创造性的破坏来获取利益,展现自己的能力。而程序员关注的是如何创造,通过创造来获取利益,展现自己的能力。

就如同一个硬币的两面,一个新技术出现时,黑客总会关注其缺陷,而程序员更多的是关注它的优点。

程序员把一个东西的技术吹的再厉害,但是黑客总会通过技术手段找出它的缺陷,并证明出来。

程序员一般只是跟着技术明面上的内容走,但是黑客总会看到技术明面之外的东西,别人看不到的、意想不到的地方,这些地方会被黑客挖出来并且利用。在黑客眼里,一个软件总会有漏洞、都是垃圾,程序员不是在开发垃圾就是已经完成了垃圾,但是没有程序员的努力工作,黑客也没有用武之地。

程序员和黑客就是这般如同矛和盾的共生关系一样。

一般来说,黑客和程序员各有侧重,技能树不一样,比如前端的XSS攻击,黑客知道这个输入框内的内容如果没有被处理,那么可以通过构造特殊的输入内容来达到攻击目的,但是对于这个输入框如何弄得更好看,对用户交互友好这些他一般不关心,可能下一个关注点就是你的表单是不是可以做CSRF攻击。还有一个例子是,框架/语言爆出了很多漏洞,黑客就会利用这些漏洞发起一些攻击,很大概率黑客对这个框架/语言都不是很熟悉。相对的,普通程序员也不会关注黑客关注的很多点,比如CAPTCHA这种可能就直接引入个第三方的来防御了,并不会自己去实现一遍。还有加密算法这种,也几乎只有黑客才会去研究。普通程序员可能研究的就是压缩算法。

黑客的攻击手法多种多样,有的甚至不会写代码,电影《我是谁:没有绝对安全的系统》里就有一个根本不需要写代码,通过翻垃圾桶、开锁偷资料的操作搜集了很多有用的信息,从而发起攻击。这种手段称为“社工”

在这里插入图片描述

另外,有的初级黑客可能会利用别人写好的工具干坏事,也不用写代码。比如利用嗅探工具/安全扫描工具搞你的系统,利用字典暴力破解你的账号密码登录。这些人被称为『脚本小子』,是最令人头疼的,好防但是架不住人多,而且成本低,有事儿无事儿干你一炮,失败了也没啥影响,要是成功了可以吹一年。这些人大部分也不写代码,就是纯粹的操作工具,一般这类人不称为黑客。比如当年有个专科生,直播攻击自己学校的系统,就是用的这种方式。还用360浏览器…被吐槽惨了。

正常的,能被称为黑客的,大多都是会写代码的

搞你路由器/网关,拦截你的收发数据算温和的,暴力点儿的直接通过和你处在同一个局域网内这个便利能搞非常多事儿。一个真正的黑客,一定是以『获取你的ROOT权限』为最终目的的,没有这个追求,都不叫黑客。

其实Hacker一词最初是一个敬称,是对那些具有极客精神的程序员的称呼,后来不知道为啥,就有了『黑客』这一指代。

黑客和骇客是两种截然不同的两种概念,这也是区分程序员和黑客主要标志。

大家传统意义上的理解其实是骇客,真正的黑客如同顶级的武林高手点到为止,而且具备真正的人文情怀,如同顶级高手不但武功高强而且谦卑深藏不漏。这些都不是普通程序员所具备的,程序员主要分解任务,转化成各种功能模块,然后用对应的代码去实现,按部就班的来。黑客从心里不愿意受到限制,有点像我们武侠小说里边的侠客,路径不平拔刀相助,见到有奖规则的公司准会有黑客去收拾。

大家理解的黑客其实是骇客,专门搞个密码破解了,破解个游戏为自己某点私利,获取点黑色收入

其实想成为一个黑客,最重要的一点就是要看看自己够不够黑。

有一句古话说的非常好,也能非常好的描述黑客和程序员的关系,那就是:道高一尺魔高一丈。

  • 程序员是道,黑客是魔!程序员是建造房子,设计院子的人,黑客就像是盗贼,可以神不知鬼不觉的来到程序员盖的房子,造的院子里来偷东西。
  • 程序员中有白客来加强房子的安全,比如把院墙盖的更高,更宽,更结实,再弄上电网等,加强防护,保卫安全。

黑客就会想办法,找漏洞钻进来。

一矛一盾!

道高一尺魔高一丈,道可能在魔千万次的冲击中都抵挡住了,只有一次出了问题,没挡住,就感觉魔很厉害!

程序员:学习如何在计算机语言语法给定的框架内更好地做事情,注重语法理解与业务逻辑;
黑客:研究计算机语言对计算机底层逻辑的封装与映射关系,注重背后原理与底层逻辑。
所以想要成为一名黑客的首要任务就是转换学习视角,不能总是从程序员的角度去看待问题,否则学完之后充其量只能是一个更高级的程序员。而这种转换其实是挺难的,这也算得上是快速学习黑客技术的心法了,没有这个心法虽然坚持到最后也能学会,但是会耗费非常多的时间在无意义的知识细节上。

黑客都需要掌握什么

  • 第一是背景知识,需要理解语言结构、操作系统、网络、计算机体系结构等原理;
  • 第二必须能够熟练使用各种黑客攻击工具,寻找系统漏洞并实施攻击是一项重复性工作,灵活使用各种黑客攻击工具可以将这项工作自动化,并以人们易于理解的图形方式展现复杂的系统结构;
  • 第三必须掌握某种编程语言,无论黑客攻击工具多么强大,进行高难度黑客攻击时,必须亲自编写适合自己使用的工具,此时需要掌握编程语言。

需要注意的是,有经验有能力的程序员对于具体行业业务的经验积累则是黑客所不具备的,因此仅仅从技术层面对比,是在拿程序员的短处去对比黑客的长处。

而之所以黑客更受尊敬,主要原因是黑客的标准线非常高,达不到成为不了一名黑客,而程序员的标准线非常低,天天码砖重复劳动就能成为程序员

任何一个领域,只要做到极致,都可以很牛.

网络安全学习路线

先放上路线图

第一阶段:基础操作入门

入门的第一步是学习一些当下主流的安全工具课程并配套基础原理的书籍,一般来说这个过程在1个月左右比较合适。在这个部分我介绍的课程和书籍都属于难度非常低的,就算是完全零基础的小白只要认真学也是能够学会的

课程我推荐下面这套Web安全入门基础课程,难度不大而且完全免费。这套课程至今已经有19万的学习人次,好评度99%。一共包含了40节课,课程内容主要包含了burp、awvs、cs、msf等当下主流工具的使用,而且每节课程都配备了练习靶场。听完课程后再去靶场进行练习,靶场当中有任何不懂的问题也可以在学习群里请教前辈,这样能够大大提升你的学习效率

在学习基础入门课程的同时,推荐同时阅读相关的书籍补充理论知识,这里比较推荐以下几本书:

  • 《白帽子讲Web安全》
  • 《Web安全深度剖析》
  • 《Web安全攻防 渗透测试实战指南》

第二阶段:学习基础知识

在这个阶段,你已经对网络安全有了基本的了解。如果你认真看完了上面推荐的书籍和课程,相信你已经在理论上明白了上面是sql注入,什么是xss攻击,对burp、msf、cs等安全工具也掌握了基础操作。这个时候最重要的就是开始打地基!

所谓的“打地基”其实就是系统化的学习计算机基础知识。而想要学习好网络安全,首先要具备5个基础知识模块:

学习这些基础知识有什么用呢?

计算机各领域的知识水平决定你渗透水平的上限。

  • 比如:你编程水平高,那你在代码审计的时候就会比别人强,写出的漏洞利用工具就会比别人的好用;
  • 比如:你数据库知识水平高,那你在进行SQL注入攻击的时候,你就可以写出更多更好的SQL注入语句,能绕过别人绕不过的WAF;
  • 比如:你网络水平高,那你在内网渗透的时候就可以比别人更容易了解目标的网络架构,拿到一张网络拓扑就能自己在哪个部位,拿到以一个路由器的配置文件,就知道人家做了哪些路由;
  • 再比如你操作系统玩的好,你提权就更加强,你的信息收集效率就会更加高,你就可以高效筛选出想要得到的信息

这些基础该学到什么程度呢?

计算机各领域的知识水平决定你渗透水平的上限,但是零基础并不是要把上面的全部都学的很好再去搞渗透,那不仅会劝退大部分人,而且像我前面说的深度学习很容易学的囫囵吞枣,最后反而竹篮打水一场空

作为初学者,可以先学习基础。比如你先学一个编程语言的基础,用PHP做例子,你起码要懂if else这些、连接数据库;比如学数据库,用MySQL做例子,那至少也是要会增删改查、子查询这几个操作;网络的话比较难,也是很抽象的,你做外网的渗透,至少要懂基础的http协议,知道端口是什么,知道网站是怎么架设起来的;操作系统的基础相对比较好学,主要是各种命令的作用,各种软件的安装和使用

学习书籍和资源推荐:

《HTTP权威指南》

《Python核心编程》

《PHP和MySQL Web开发》

《JavaScript高级程序设计》

Web安全学习笔记 - Web安全学习笔记 1.0 文档

靶场:

Damn Vulnerable Web Application
Audi-1/sqli-labs
BUUCTF
bugku
网络信息安全攻防平台

第三阶段:实战操作

1.挖SRC

挖SRC的目的主要是讲技能落在实处,学习网络安全最大的幻觉就是觉得自己什么都懂了,但是到了真的挖漏洞的时候却一筹莫展,而SRC是一个非常好的技能应用机会

SRC平台:

SRC平台合集

2.从技术分享帖(漏洞挖掘类型)学习

观看学习近十年所有0day挖掘的帖,然后搭建环境,去复现漏洞,去思考学习笔者的挖洞思维,培养自己的渗透思维!

安全大佬博客:

Sec-News
李劼杰的博客
Yaseng 博客
离别歌
Lcy’s Blog
hackfun
信安之路
蓝骑兵

书籍推荐:

  • 《WEB之困-现代WEB应用安全指南》
  • 《内网安全攻防渗透测试安全指南》
  • 《Metasploit渗透测试魔鬼训练营》
  • 《SQL注入攻击与防御》
  • 《黑客攻防技术宝典-Web实战篇(第2版)》

到这一步,再加上之后对挖掘漏洞的技术多加练习与积累实战经验,基本就可以达到安全工程师的级别

最后

为了帮助大家更好的学习网络安全,小编给大家准备了一份网络安全入门/进阶学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂,所有资料共282G,朋友们如果有需要全套网络安全入门+进阶学习资源包,可以点击免费领取(如遇扫码问题,可以在评论区留言领取哦)~

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
————————————————
👉优快云大礼包🎁:全网最全《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击)👈

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值