黑客如何学起?

论坛 期权论坛 知乎     
知乎用户   2019-7-31 00:54   6809   5
转载声明:本文由互联网用户自发贡献,部分转载来源来自知乎(zhihu.com),强烈建议您访问知乎查看完整内容。本社区不拥有所有权,也不承担任何法律责任。如有侵权,请联系optbbs@163.com。一经查实,即刻删除。
起步需要什么资金条件?
多久能够上手?

相关问题:零基础怎么做黑客?
分享到 :
0 人收藏

5 个回复

倒序浏览
2#
热心回应  16级独孤 | 2019-7-31 00:54:20 发帖IP地址来自
4月19日更新:
快5k赞了,谢谢大家的喜欢~
在此,我又来给大家介(安)绍(利)一款黑客情节满满的游戏啦
某爸爸:我不仅能带你重游烧毁的巴黎圣母院,还能带你体验真实刺激的黑客世界......再次谢谢大家( ω )
--------正文分割线--------
哇哦,又被邀请了。感谢~
这个问题我之前回答过很多次,既然被邀请了我就再来回(zao)答(lun)一(zi)下!
在原答案的基础上,我新增了更详细的内容,希望这个另辟蹊径的答案,能给你的黑客学习带来一些乐趣!
下面我就来抖个机灵,大家不要打我!

--------正文分割线--------
除了这个问题之外,社区上有很多类似的问题邀请我来回答——
“如何从一个计算机小白入门网络安全成为黑客?”
“成为一个黑客该如何学习?”
“如何学习网络安全?”
我也在回答里看到了许多优秀的答案,从入门到进阶需要看的书籍,以及一些概念、技巧和实战的网址。(这里不得不提知道创宇研发技能表
今天我就另辟蹊径!
在系统的学习之外,我们其实可以通过玩游戏来巩固知识并继续学习~下面我带大家通过玩游戏从一个计算机小白进阶成一个黑客,真正做从到入门到精通!
[h1]第一步——开始编程!(游戏:Codecombat极客战记)[/h1]传送门:
CodeCombat: Learn to Code by Playing a Game我说的计算机小白是那种编程都不会的小白…所以第一步我们从编程开始。编程世界神奇的大门就此打开!有了它,简直把初学者到中级水平的开发者的编程学习安排的明明白白。

极客战记的类型是基于浏览器的角色扮演游戏,玩家在游戏中扮演一个闯关的英雄,在游戏内通过编写代码来让人物移动或是攻击以完成游戏任务。

看看教学内容!就知道有多明明白白了!


来,选择一个你心仪的英雄,一起在编程的学习上披襟斩棘吧!整个游戏里涵盖了编程的基本概念包括:逻辑、函数、循环等等。在冒险的过程中小白面临着编程的挑战,如果通过了会解锁下一关,并获得经验点,经验点可以用来提升英雄的能力和购买新的装备。

(为什么没有世界上最好的语言?为什么?)
[h1]第二步——入门了后我们来进阶!(游戏:Coding Games)[/h1]传送门:
Coding Games and Programming Challenges to Code Better通过玩了一段时间的极客战记后,计算机小白已经进步了!这时小白可以独立的编写一些比较简单的程序,但是要想成为一名黑客我们还得在编程的路上继续学习。

Coding game官网截图CodingGame就是一个非常好的选择,这个游戏宗旨就是:引领高级开发人员更上一层楼。所以它很有挑战性,能帮助小白提高编程技能。并且,它支持包括PHP、C、JavaScript在内的20多种编程语言。相比极客战记,它拥有更多可以使用的编程语言。

除此之外用户界面功能非常丰富并且可以自定义。并且你还可以选择自己的代码编辑器风格例如Vim。这款游戏还支持多人对战哟,小白可以叫上一群好基友快乐的玩耍。边玩耍边提升编(ying)程(yu)能力,简直美滋滋。
[h1]第三步——开启黑客的大门(游戏:Hackmud、Hacknet、Uplink)[/h1]传送门:
hackmud on SteamHacknet on SteamUplink on Steam小白经过前两个游戏的玩耍,编(ying)程(yu)已经很熟练了。这时就让我们来开启黑客大门,通往网络安全的世界~
在以上这三款游戏里小白可以了解到很多网络安全的概念和手段。游戏里你会通过使用社会工程学的技术来通关,或者去尝试破解系统。

Hackmud游戏的欢迎语是:“盗窃、洗钱、偷钱和窃取他人信息、故意篡改他人计算机系统以及代码、欺诈、泄密和陷害他人这些都会在Hackmud中出现,而这些行为在游戏中会受到对应奖励。”想想都觉得刺激吧!

hacknet在游戏里小白将会被带入一个无尽的虚拟黑客世界,基于真实的UNIX指令,模拟真实的黑客入侵过程。

hacknet和这款游戏类似的还有一款06年的老游戏Uplink。在游戏里你的任务包括入侵你竞争对手的计算机系统,盗窃研发数据,破坏其它公司,洗钱,清除证据或嫁祸于人。(这段介绍来自Steam)

Uplink通过这些游戏的洗礼,我们已经进入了黑客世界的大门~虽然想靠黑客游戏完全学习黑客技术不太现实,但是我们至少能了解到黑客世界的基本概念和一些攻击手段~
学习过后玩把游戏放松放松也是极好的!
最后,除了收藏别忘了点个赞哟~(ω< )★
感谢阅读~
我是酷酷的网络安全公司知道创宇,欢迎访问我们:
知道创宇云安全
如果你想与我成为朋友,或者想了解我们,欢迎加我微信kcsc818~
3#
热心回应  16级独孤 | 2019-7-31 00:54:21 发帖IP地址来自
转载下我的《黑客学习发展流程图(黑客反病毒论坛)》吧。

    今天看一位网友的日志上面有一篇名为“学黑的目标”的日志,里面有一个略显粗糙学习发展流程图,后面还跟着一句话“有目标才有动力”,不禁有些感慨。
    这使我感觉到,一个“过来人”留下的东西对后面的新人影响之巨大!但是很不幸的是,这些影响并不都是正面的,因此我觉得,一点一滴的积累对于后人的学习与提高更有帮助!大多数人在越过门槛时被淘汰掉了,因此门槛后面的路对于大多数人来说并不重要,重要的是门槛前面的路是否好走。
    有了这样的一个想法,便因此诞生了一张图,希望这张图能给有信心的新人们指引一个方向,并使没有信心的新人知难而退,以免浪费自己与别人的时间。

     由这幅图不难看出来,真正想学点有用的东西是需要很多基础知识的,而这些基础知识的涵盖面也是非常广的!因此,黑客技术并不适合没有毅力的人学习,更不适合容易自我膨胀的人学习。
    没有一个与世无争的心态,在网络安全领域里很难有什么成就。

===== 2015-01-05 更新 ========================================
      6年前的夏天,还在大学的我百无聊赖的翻着技术书籍,耳边是宿舍兄弟们打3C的声音。随手点了点博客,发现有个黑客技术初学者正在按照一张质朴的黑客学习路线图去收集资料,并试图学习黑客技术,正是由于这个原因,使得我突然间来了一种使命感,因此便诞生了《Windows下Hacker学习发展流程图 V0.2 Beta》这张图。
       但是令我所想象不到的是,这张图在随后的几年时间内在各大社区疯传,部分社区的点击量甚至都是以10万计,回复量甚至都是以千计的。除此之外,很幸运的是,这幅图也成了不少大学信息安全专业的教学素材。
       这幅图能发挥出如此之大的力量是我创作之初所没有想到的,也正是因此,才使得我有动力在6年之后完成了这幅图的正式版。这个版本的图没有图注,我期望这是一副仅凭直觉就能看懂的图,如果您对这幅图有什么建议(包括但不限于内容准确性、样式、配色、用语等),都欢迎向我反馈,我会尽快对其进行更新。



===== 2017-03-02 更新 ========================================
有关学习心法及具体书目请参照《黑客技术/信息安全/网络安全如何从零学起? - 社区专栏

欢迎关注我的专栏:黑客说 - 社区专栏

.
4#
热心回应  16级独孤 | 2019-7-31 00:54:22 发帖IP地址来自
早期的互联网非常的单调,一般只有静态页面,现在,随着技术的发展,web上大多数站点实际上是web应用程序,在服务器和浏览器之间进行双向的信息传递。他们支持注册登录,金融交易,搜索及用户创作的内容。用户只需要拥有一个浏览器,就能实现各种功能。

Web 是指一个网站的前端页面到后端服务,比如我们常见的 Javascript、PHP、Python、Mysql、jQuery、Docker 等,包括开发、运维这些服务。

所以在我看来 Web 安全也就是从安全的角度探索 Web 的一种方式。

为了能够更简单的理解一些常见漏洞,我们首先来看一下这份试卷:
试卷 考生姓名:__________
考生学号:__________

一、诗歌补写
床前没月光,___________。
春眠不觉晓,___________。

二、数学运算(在括号内填入数字)
3 500 +400 * 3 / 2 + 1 = ( )
4 ( 1 + 2) / 3 * 400 +500 = ( )
考生姓名:__________
考生学号:__________
首先我们来看这个,试卷的名字和编号填写,这个部分有“漏洞”吗?有
学生的姓名和编号都写在这儿,没有做任何保护措施,因此,你只要偷看了某人的试卷上的这部分内容,然后把你的试卷的上的姓名和考生编码写成和他一样的即可伪装出他的身份。
漏洞攻击成功


一、诗歌补写
床前没月光,___________。
春眠不觉晓,___________。
这道题有漏洞吗?有
这道题的答案本来应该是“疑似地上霜”和“处处闻啼鸟”
But,问题中,并没有规定答案里不能添加标点符号,所以,我完全可以把“疑是地上霜,举头望明月,低头思故乡”以及“处处闻啼鸟,夜来风雨声,花落知多少”当做答案写进去。
漏洞再次进攻成功:P


二、数学运算(在括号内填入数字)
3 500 +400 * 3 / 2 + 1 = ( )
4 ( 1 + 2) / 3 * 400 +500 = ( )
这个问题有漏洞吗?有
出题者规定了只能填入数字,但却没有说是什么数字,也没有规定多少位,那么我的答案可以是
中文数字「壹佰壹拾圆」、罗马数字「MCI」或「0000000000001101」。
漏洞第三次进攻成功 XXD

这份试卷简单的模拟了Web漏洞的攻击思想,在实际中,我们打开一个网页提交登录或者是搜索都会经过服务器做的一系列处理又回到浏览器,在这个过程中我们提交的数据会被带入到一系列的填空题中,有的是我们能猜到的,有的则是意想不到的,有的会经过SQL查询进行填空,有的会被带入到命令行中进行执行,最后又把结果返回给浏览器进行填空,也就是最后我们看到的结果。


在数据的传输中,我们可以把 web 简单的分为几个层次:
  • 浏览器:浏览器即客户端,提供客户端和服务器端的数据信息交互。
  • http:客户端与web服务器进行交互时就存在web请求,这种请求都基于统一的应用层协议——HTTP协议来交互数据。http属于轻量级协议,无需连接,提供了对通信错误的容错性。
  • 中间件:中间件是位于平台(硬件和操作系统)和应用之间的通用服务
  • Server容器:Server容器负责解析用户请求和脚本语言,类似的有Tomcat,JBoss等。我们访问网页看到是web容器处理后的内容。
  • 数据库:动态页面可提供交互式的信息查询服务,主要依赖于web数据库的实现,对外提供包含 表单的Web页面作为访问接口,查询结果也以包含数据列表的Web页面形式返回给用户。
当然除了这些数据也有可能流向不些不可见的第三方服务商。



下图就展示了数据的传输流程,以及不同阶段经常出现的漏洞及其原因:



我们常见的Web漏洞类型主要有SQL注入、XSS、远程命令执行以及越权等。以下我们分别用举例的形式为大家介绍这几种漏洞。

(SQL注入)
所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
  • select * from username = ____ and password=_____
  • select * from username   "test" or ""="" and password="123456"
(XSS)
XSS则是攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。
  • 你好啊,尊敬的______
  • 你好啊,尊敬的 xxxalert(1)
(远程命令执行)
而远程命令执行,是用户通过浏览器提交执行命令,由于服务器端没有针对执行函数做过滤,导致执行命令。
(越权)
越权漏洞是比较常见的漏洞类型,越权漏洞可以理解为,一个正常的用户A通常只能够对自己的一些信息进行增删改查,但是由于程序员的一时疏忽 ,对信息进行增删改查的时候没有进行一个判断,判断所需要操作的信息是否属于对应的用户,可以导致用户A可以操作其他人的信息。
  • Cookie: uid=11426;
  • Cookie: uid=1;
关于越权,就像我们刚刚试卷体中的姓名部分。


再展示一个数据的传输流程图,以便直观清晰的看到,数据在各层中是怎样运作的,以及可能发生的漏洞:



了解了这几个漏洞之后我们可以看到原理都有些类似,也很简单,当然我们只要不再局限于概念名词就会发现 web 安全的大部分漏洞都很简单。更多时候,发现一个复杂的漏洞需要是只是耐心。

概念,不是一个神圣的东西,概念很多时候只是bullshit。很多概念的产生是因为需要认识和概括某种存在着的现象而不得已产生的,概念也许是必须的但并不是必然如此的。

换句话说,概念仅可以被看做是一种努力尝试描述后的结果之一。或者也可以说概念是提出这个概念的人自嗨的产物,跟其他人关系不大。甚至,有些概念是‘别有用心’的发明来合理化某种其实不必合理化但是存在的现象。

所以不要把自己拘泥于一个这样的概念中来思考所面临问题的实质。把概念忘了,你才可能看清楚你和事物本身的关系。


完全没有基础我该从哪下手?

完全没有基础学习 Web 安全是件比较难的事情,所以我给出的最小的方案和最少的建议。
  • 工具
  • 开发
    • 书籍
      • 《细说 PHP》
    • 实践
      • 使用 PHP 写一个列目录的脚本,可以通过参数列出任意目录的列表
      • 使用 PHP 抓取一个网页的内容并输出
      • 使用 PHP 抓取一个网页的内容并写入到Mysql数据库再输出
  • 安全
    • 实践
    • 书籍
      • 《黑客攻防---web安全实战详解》
      • 《安全之路:Web渗透技术及实战案例解析(第2版)》
      • 还是看不懂就找自己能看得进的 Web 安全的书


探索资源,我在研究和学习的过程中更加好的资源和工具来帮助我们成长和解决问题?

平时我们安装一个mysql,要先到处找安装包,再一步步配置,运行,还不知道装哪了。开机就自动启动了,用了 docker 后再也没这个烦恼拉,一行命令,或者是在Kitematic界面上点一下就运行拉。
举例:
挖漏洞应该是一件快乐的事情,当你把挖漏洞的目的从单纯的挣钱和声望再丰富一些,你会发现收益的重要性可能远小于心情愉快。慢慢的变成一种良性循环,让你走的更远。
天空才是你的尽头,呵呵嗒 ^_^
5#
热心回应  16级独孤 | 2019-7-31 00:54:23 发帖IP地址来自
还是先表态
“老大,什么是黑客啊?”
“比如套近乎认识对方员工,然后通过社工得到这个员工的惯用密码,冒充这个员工下源码把对方源码搞到手,熟读对方代码知道对方使用的各种框架和插件版本,然后去找对应版本已知的漏洞,看看能不能把对方的服务器日下来”
“那那群整天扫端口跑字典,‘一键入侵XX’的是什么?”
“那是傻逼”


找几台电脑,弄几个路由器,你就可以开始了解网络运维的基本功了
贵点,要逼格,自己搞个ThinkPad社区用户:为什么工作的人一般都用 ThinkPad?
服务器机柜,或者500块钱以上机箱装一套扩展性很好的机子,8盘位,光驱位硬盘快仓
路由器弄个入门企业级的
没钱,那就自己的屌丝破电脑,不够就再配一台771的洋垃圾,路由器淘个N手思科\华为\TP\DL\飞鱼星都能凑合
什么,你问什么是洋垃圾,你不会装电脑?
那等你能看着诊断卡上POST代码卡在C1的时候骂娘“一堆他喵的烂内存”再说黑客吧
是的,就是这么残酷,搞IT的人,主观能动性和独立解决问题的能力是相当重要的
不知道怎么解决不可怕,不知道怎么寻求解决才是真的无药可救
熟悉各种网站不同的专业领域,知道该去哪里找答案,去哪里提问
学会合理的切分关键词,充分利用搜索引擎,甚至熟悉每个搜索引擎的不同尿性
利用搜索引擎寻找资料和文档,以及他人完全相同的悲惨日记,比如《我是如何解决XXXX报出xxx错误的》


直到你玩遍了这对破烂上能玩的一切,尽可能多的一切的一切
对电脑和网络有一个自己感性的,完整的理解,每个部件都是干嘛的,为什么必须要有它
你才真正具备成为一个黑客的基础——Geek科技宅级别的知识储备


等到你能用一堆破烂组建起一个能局域网共享小电影和游戏的微型局域网,你基本上才真正走入网络工程的世界
为你的“服务器”装一套Linux的系统,然后在上面架个网站吧,LAMP,LNMP,都自己自娱自乐玩一下
装个WordPress,或者自己开个DZ论坛
玩够了你会发现,服务器也没什么了不起的,Linux也并不是多么复杂多么高大上的一个东西,甚至用yum或者apt-get装个软件比Windows还要简单
现在你可能已经懂了Linux的基本使用,懂了IP监听、80端口、HTTP请求这些东西了,也明白数据库是个什么玩意了,库表列行基本概念也有了
然后你可以大胆的尝试一下,自己魔改这些PHP的代码,踏足WEB前端三大件【HTML+CSS+JS】的领域,或者了解一下PHP的编写
也可以尝试一下把这个服务器连到广域网上,给你的朋友看【大部分运营商都封家用宽带的80端口,你可以考虑换个端口试试或者只在当地同城同运营商的环境下展示】,随后了解一下域名、DNS之类的东西
也可以去调戏一下服务器上的数据库,尝试用SQL语句实现一些自己的目的,把最基础的增删改查了解一下,如何花式用WHERE语句,甚至使用各种复杂语句组合嵌套
你发现自己没法架FTP给朋友分享小H片了?仔细排查,你发现了一个叫NAT设置的东西,于是你又开始研究路由器里的设置,熟悉各种局域网的基础概念,WAN口、LAN口、VLAN、WLAN、RJ-45接口的十百千速率、QOS限速,甚至你会无聊到尝试一下通过调整无线路由器的发射参数来提高自己在厕所里看电影的流畅度
直到你可以自己架一套网站和数据库,然后自己把它黑掉,由于服务器就在眼前,你可以完整的从攻防的两个角度,测试你自己的矛和盾,观察它们之间的交锋,评估它们的效用


你是不是觉得自己学了很多其他细分专业的工作,比如运维或者前后端甚至网络通信领域?
很不幸,黑客就是这样,需要了解一切,才能把一切玩弄于鼓掌之中
这也是黑客大神一定是Geek,必须有旺盛的好奇心和强大的知识储备的原因
解决的问题总会带来更多的问题,好奇心是杀不死的,也是永无止尽的
而这会让你变得更强


事实上,阻止你成长的不是未知,而是你的创新能力,独立解决问题的能力
你见过通过CPU风扇的转速判断系统是不是能正常开机的吗?
要想成为一名有能力的黑客
灵活的,富有创意的,甚至另辟蹊径惊为天人令人拍案叫绝的解决问题是必需品
脑子正常的人是黑不进为脑子正常的人设计的系统体系里的
而支撑他能剑走偏锋出奇制胜的法宝,就是庞大的知识储备,对这些系统的深刻理解
他 了 解 这 套 系 统 的 每 个 细 节,所以才可以为所欲为为所欲为


终有一天,你只要看见一套系统,你就知道,它是怎么做出来的,你甚至能脑补出具体的代码实现,设备拓扑,架设过程
当然,你也知道,如果是菜鸡做这种东西会有怎样的漏洞和弱点,因为你当年就是那个菜鸡
现在对于基础的入侵,你可能不需要任何教程和思路了,因为你知道原理,也就知晓了一切


玩得开心点,以及,别做恶
也许到了那一天,你早就没什么兴趣去黑掉什么网站,在一群不懂技术的麻瓜头上作威作福了
创造和改变不是义务,是宿命,去做点真正牛逼大了的事情和东西吧
最近打算在B站开课了,打算干死那些坑爹的培训班……


雪狼八组 - GeekLive
另友情推一下熟人的Q群吧
点击链接加入群聊【编程\网络运维\IT自学】:正在跳转
6#
热心回应  16级独孤 | 2019-7-31 00:54:24 发帖IP地址来自
发现大家都推荐先理论在实战啊,那我推荐一个边学边练的方法吧。这个比较容易上手,也比较容易找到乐趣。只针对小白入门,大佬勿喷!跟着做应该就没问题了。


先回答疑问:
1. 不需要额外花钱
2. 入门时间示学习能力定,每人不一样。


下面来详细步骤:
1.首先你有一台电脑


先安装虚拟机,这里我推荐用VMware Workstation,可以让你在一台电脑的桌面上同时运行不同的操作系统,如win7系统里同时跑着win8,win10,linux系统。





虚拟机里可以自己搭建网站。然后用自己的物理机打虚拟机,虚拟机打虚拟机,省得外面乱用工具出事情。VMware Workstation地址百度一下可以直接下载。下面是VM虚拟机的安装教程,照着教程装上就好了。
VMware虚拟机 软件安装教程


2.安装靶场环境,找一个靶场一边学习一边打


靶场你就可以理解为一个虚拟的网站服务器,常见的靶场有VulnHub,webug3.0,DVWA,SecGen这里我推荐国产的webug3.0,这个靶场很简单,适合新手入门。做成了闯关的形式,而且基本包含了所有的常见漏洞,强烈推荐。





下载地址是这个https://www.webug.org/
网盘地址:https://pan.baidu.com/s/1eRIB3Se
安装教程及介绍:webug3.0介绍及教程


3.往虚拟机里面安装一个kali系统
在进行靶场练习的时候,经常要用到kali,因为Kail linux可以说是网络安全人员的专用系统,里面直接集合了很多的安全审计工具。





它是BackTrack系列的升级版。作为一个安全新手,如果你之前没有接触过BackTrack系列的话,建议直接学习使用Kail Linux。
这里有kali linux的介绍和安装方法:kali介绍及安装教程
这里有kali linux的学习使用教程:kail linux系统安装使用教程,免费下载丨新手必备


4.再往虚拟机里安装一个自己经常用的系统。
因为打靶场的过程中肯定会用到各种各样的工具,但网上的好多工具的资源都是有后门的,所以一定要再虚拟机里使用。中毒了就删掉虚拟机再重新安装使用呗。这里我推荐win7,因为我就用的win7。







这里有win7下载地址和安装方法:虚拟机安装win7教程
这里是系统: https://pan.baidu.com/s/1g6NkOAuQQyVN7AJc3BzmLA 密码: g53y


5.现在准备工作就已经完成了,直接打靶场开始学习吧。
关于webug3.0的靶场通关攻略,可以在i春秋,freebuf上找到很多。遇到不了解的就先去看看,然后借鉴思路再去闯关测试。


千万不要为了通关而通关,而是要把每关自己不懂得地方拓展一下,去仔细了解。这样通关过程可能有点久,但你通关之后,也就初步入门了。这时候你也知道自己哪方面知识需要补充,也知道自己对哪方面更加感兴趣。到时候你就可以自由发挥了!


这里是完整版的i春秋的webug3.0通关攻略


以上,希望能有些帮助。


只是入个门,不懂可以问我


不收徒不收徒,本人很水。对了,私信我一下:教程


我可以送你很多的黑客学习教程,求赞求关注!求赞求关注!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:182358
帖子:1746
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP