文/振宇(微信公众号:一本黑)
【一本黑】媒体或商业转载必须获得授权,个人转发朋友圈无需授权。
我没想过当什么师父,但是我想引更多的人入门。
从「一本黑」诞生至今已经有三月有余,这个由黑客驱动的自媒体一直在给我们创造欣喜。从小圈子出发,一步步走入大众视野,这个过程里充满了未知的困难。一直以来,在后台查阅消息和评论已经成为习惯,相信有不少人得到了我的回复,这种「有来有回」为平淡的写稿增添了不少期待。
在这其中我发现了有两个问题需要专门解释下。
一是大家对我的身份和技能的理解偏差很大,二来就是不少人在问如何成为黑客,所以我要对「黑客」做个解释并且借机讲讲如何成长为黑客。
黑客是什么?
一本黑是由老师傅为首的一群黑客组成的,以老师傅的能力来说,全国未必能超过三百个,这就是我们最强大的技术后盾。
从我的理解来看黑客分广义和狭义两种。还有独立于此之外的「社会认知」。
社会对黑客的认知大多都是错误的,比如黑客都是程序员都认得代码、黑客做的事都是违法的、黑客个个都日进斗金。准确的说这是「骇客」,黑客是一个褒义词。骇客是「破坏者」,而黑客更倾向于是「探索者」和「建设者」。
下面我会具体说说什么是黑客。
广义的黑客比较抽象,类似于一种理想或者信念的存在,这是一种追求创新、希望改善网络环境、乐于分享的精神。这就意味着在任何领域,只要具备这样的精神,都可称之为黑客。
早些年,国内的网络安全尚处于萌芽阶段,从业环境大不如现在,许多人从事病毒或者web安全方面的研究大多是出于自己的兴趣,对提高收入增益甚微。没有系统学习的条件,基本靠自己摸着石头过河,相互分享是相对高效的方法了,可惜那时从事这些领域的人实在太少,遇到一个便是久逢知己的感觉。后来诞生了一个叫「乌云」的社区,极大的方便了知识分享,也给许多非安全从业者提供了为网络安全做贡献的机会。后来该社区因触碰到了法律红线而被关停,从现在来看,那时的氛围是最接近于「广义黑客」的,而现在,更多的是一群逐利者。
狭义的黑客指的是那些身怀黑客技术的人,比如掌握病毒木马的知识、懂社会工程学、懂渗透技术等等
本文我们暂且沿用狭义概念。黑客并不需要懂编程,当然,懂编程对其职业发展会更有利。就拿老师傅来说,作为渗透工程师,因为是黑盒测试看不到代码,只是靠输入和输出来判断问题,所以即使对代码一窍不通,也不妨碍其在网络世界里畅行无阻。
为什么要做黑客
黑客们也是个很恋旧的群体,没事坐在一起就喜欢说说那些过去的事。从我们这代人来说,大多是出于兴趣而入了门,那时并没有职业规划,也更没想到如今的安全行业发展这么快。
一路走下来,支撑自己不断前行的动力还是来源于一种责任感。每次看到社会对网络安全漠不关心,而自己又见识到了这里面潜在的各种危害,就会有种想让他们都醒悟的冲动。因为发现的问题得不到厂商认可,刺激出一种「我不服」的心理,这股劲一直在支持我们前行。那时许多安全研究者都是无偿为厂商找漏洞,能得到厂商的认可已经十分欣慰。
幸运的是,安全领域的前景越来越好,厂商和大众的安全意识也在逐渐觉醒。
很多人在问我是如何学到这些技能的,能不能提供一些渠道或者资料。
拿一本黑这个团队来说,我们学习这些知识的渠道并不固定,大多数是先学了一点基础,然后就自己野蛮生长,并没有标准化体系化的学习。我们团队擅长于渗透测试和代码审计,代码审计是基于研究代码来寻找问题,而渗透测试就是以外部攻击者的身份来进行测试。
渗透测试不是具体的一种技能,而是一种涉及面很广的方式,比如Web安全、APP安全、web应用安全、病毒木马、物联网安全。在一次渗透中,我们可能会用到多种技能。
举个例子,有人是专门寻找安全漏洞并且提交给厂商,这种人被称之为「白帽子」。而渗透则更多的是要利用手里的一切武器(包括漏洞),来达到侦查、窃取数据、瘫痪服务器等目的来证明安全漏洞的危害。毕竟不能证明危害的安全漏洞其价值会大打折扣,毕竟所有的攻击都是以目的为导向。证明核武器威力的最好方式不是讲核聚变,而是让它炸一次。
在我们眼中,渗透是一门更高层次的追求,是一种最接近优雅的黑客行为。
看到这么多人在问,让我萌生了在这方面进行些尝试的想法。
渗透测试体系庞大而且知识零散,如果有个领路人,学习的效率会高很多,少走许多弯路。从现在市场的从业情况来看,好的渗透工程师确实稀缺,而安全领域正是需要这样的人才。
渗透测试不只是知识学习,更重要的是实践。目前未授权的测试已经被归为是违法行为,所以我们在寻找一个两全的方案,兼顾学习和实践。目前来看是可以实现的。
需要具备哪些条件
非要说特质,好的渗透工程师都具有足够的耐心、细心、丰富的经验。
耐心是第一要素。渗透,没有学不会的人,只有学不下去的人。就像是那句“学好英语不难,难在坚持学英语”。渗透测试并没有很高的技术或者认知壁垒,而是在于知识覆盖面宽,过程不够有趣,所以难在坚持。
在我们学习渗透的时代,没有引路人,没有相应的资料,网络也不及现在发达,经常在一些很简单的问题上耗费大量的时间。
细心也十分重要。渗透的过程中往往会接触到大量的信息,能否在信息中发现价值完全取决于细心程度。有一次,大家进入了一筹莫展的境地,就是老师傅在系统日志里看到了串字符,细心的他发现这串字符之前在其他地方也出现过,于是就大胆猜测是管理员常用的用户名,于是推测出了其邮箱,顺着这条线一直摸出了服务器的账号密码。这次突破完全归功于老师傅的细心。
渗透测试非常依赖于经验,因为渗透经常要多种技术手段交叉利用。对于不同的场景选择不同的攻击方式,更要猜测对方管理员的行为和思维模式。没有实战经验,学再多的技术也都没什么意义。
作为过来人,真心觉得学渗透不需要什么特殊的背景知识或者天赋。多少大牛连高中都没上完,而且当时的成绩也是烂的可以,但是并不妨碍他们在渗透上的造诣。(老师傅上学基本都是靠花钱买的。。。)
简单介绍黑客攻击
攻击的目的一般都是出于让对手瘫痪、窃取对方数据、薅羊毛、勒索敲诈或者调查。而攻击手段就是根据目的来指定的。(这里的内容实在太多,我之后会单开一期来讲。)
黑客的攻击过程基本就是两个步骤无限的循环。先踩点,再攻击。
踩点就是收集各种信息,比如对方人员所有的信息、服务器的域名、接口的信息、接口是否可以利用、用了哪些开源程序、这些开源程序是否有漏洞等等。
收集到的信息越多越好,然后经过自己的判断来确定攻击的方法。每一次攻击的效果都不是一定的,如果没成功进去,那就再收集信息,然后再攻击,直到最后目标达成。
黑客的攻击是通过工具来实现的。每个黑客都有自己的武器库,这是个通用的叫法。实际上就是私人工具箱,里面放着自己常用的工具。比如:社工库、burpsuite、sqlmap等。高阶的黑客往往会自己对工具进行改良,加入一些新的插件,或者自己写工具。
希望通过这期可以让大家相信黑客并不神秘,只要想学人人都可以是黑客,同时也给想入安全行业的同学可以多些信心。本来准备了大量的内容,为了控制篇幅就分开几期来写。
正在同时搜集几个黑产的料,时间上排不开,后续会一一成文。
往期:
网络博彩的清明上河图
上了个“假”黄网,误入了7亿黑产的大门
凭着女孩给的一串数字,黑客窥探出了人性