赶在 2019 年的最后一天,我终于完成了一个里程碑
2019-12-31 21:41:12 Author: mp.weixin.qq.com(查看原文) 阅读量:98 收藏

本文作者:ca01h(首个信安之路成长平台突破 100 分的成员,也是第一个靠成长平台加入信安之路核心的成员)

大家好,我是 ca01h,今年 8 月份加入了信安之路小白成长计划,5 个月的时间过去,很意外地成为了群里第一个到达 100 分的男人。

纸面上来看是 0 到 100 分的变化,而对我自己而言,意味着终于跨入了 Web 安全的领域,也算是融入了一个安全的圈子,下面是我写的一些报告,如果想看,可以在平台完成相应的任务,相信你自己学完再看会有别样的感觉:

与此同时,很荣幸接到良哥的邀请,为平台的其他小伙伴们写一写这几个月学习成长过程期间的经验之谈,刚好我也准备给自己做一个阶段性的总结以及对未来的短期规划,遂欣然接受。

但真正到了提笔撰文的时候,除了兴奋之外亦有些惶恐,惶恐是因为感觉自己资质尚浅不足以支撑一篇经验贴,直白点就是太菜了,还有太多太多的知识面、技能表、奇技淫巧需要挖掘和学习,但既然已经答应了良哥,无论如何硬着头皮都要完成这个任务。

当然,这篇文章也是面向平台的其他小伙伴们,望借拙笔浅文,与大家分享。

4 个多月的时间 100 分,完成 11 个任务,平均下来每个任务得 9 分左右,也只能是中规中矩吧,不算优秀。下面是其中一个任务,小伙伴们完成的情况:

现在回想起来,做前面几个任务的时候还没有摸到门道,是比较简单机械的搬运工,经过几个月的学习算是有点上道了,有了自己的实践操作,加上了自己对这个类型漏洞的理解和总结。

到了后面经常两个星期才能完成一个报告,会在云服务器上自己搭建的漏洞环境因为某个问题而纠缠半天,也会为了大牛的博客上轻轻带过的一句话而深究背后的原理。是的,一篇报告不仅仅是时间堆砌出来的,更需要用心去书写和理解,用手去做实验得结果。

就拿最近一篇关于 SSRF 漏洞的报告来说,我首先从《Web 安全攻防》这本书出发,只有寥寥数页,比较粗略的讲了它的原理、可利用的地方以及简单的代码分析,看完之后意犹未尽感觉远远不够,于是 Google 找到了一篇文章:

https://www.evi1.cn/post/ssrf/

这个博文相对于书籍来说已经很充实了,漏洞的产生条件、利用方式、实际利用、Bypass 等等都比较详细,对于我来说欣喜不已,遂认真品读起来,看完这篇文章确实给了我一个对于 SSRF 漏洞比较全面的认知。

但实践出真知,到我真正去复现一些细节的时候,上面却没有提到太多,有的甚至一笔带过,但我肯定不能就此敷衍过去,又找了很多其他的资料,不断地扩充自己的报告的细节,解决问题的方法肯定不止一种,有的是用现成工具和命令来生成 payload,而有的是自己截获流量经过一系列手段来构造 payload。

并不是说直接用工具不好,而是对自己的成长作用不大,可以作为参考,但绝非最优。当然,我自己还是觉得之前做的还是有些不足,比如缺少一些漏洞的实例,就拿 SSRF 来说,我最近看到一篇文章 Vimeo upload function SSRF:

https://medium.com/@dPhoeniixx/vimeo-upload-function-ssrf-7466d8630437

打算动手来试一试,也算是再一次加深印象和理解。总的来说,对于一个初学者而言,学习无非就是发现问题、查找问题、解决问题,最后的结果取决于这个过程,而这个过程又取决于你对它的态度。

上面简单的谈了一下这段时间我在写报告时候的一些感受和想法,既然作为分享,我就想分享的更为极致一些,接着说一说我自己目前学习期间的一些方法论。

首先,我认为需要一个知识库。现在是碎片化时代,生活中充斥着碎片化的时间、碎片化的内容、碎片化的知识等等,这让我们没有大段的专注时间,一种比较好的解决方式是体系化、文档化、数字化梳理和总结知识,管理学习,加深理解。比如我自己搭了一个简单的个人 Wiki 网站:

http://ca0y1h.top/

用来收录整理文章,分块管理,便于查阅温故。也并不是说非要搭建一个博客,网上也有很多可以分享记录的网站,总而言之,好记性不如烂笔头,文档化系统化是用来记录碎片化时间的所学所思最好的办法。

其次,计算机这门学科日益更新,信安尤其如此,虽然作为初学者,但我还是觉得要接触一些前沿的知识和新闻,这样才能在学习原理的时候能上手体验一下真实案例。

我推荐几个我个人正在使用的信息源,一是腾讯玄武实验室和天融信阿尔法实验室,它们每天都会分享比较新比较优秀的文章,包括具体技术、最新漏洞、恶意代码、工具使用等等,上面提到的那篇关于 Vimeo 的 SSRF 上传漏洞就是前几天浏览看到的。

我觉得这种形式还是很好的,也不用全盘接收,比较高效地获取知识,就看看是否有关于自己正在做的工作的文章或者感兴趣的知识点,记录下来。此外,大佬的博客也可以时常关注,比如说 P 牛、c0ny1、Knownsec、404 not found 等等等,再此就不一一举例了。

那么有的同学就会问,需要每天去他们的博客浏览一遍看有没有发新文章吗?其实也用不着,Chrome 有一个扩展插件叫 RSS Feed Reader 用来整合 RSS 订阅,如果发布了新文章它就会有相应的提醒,很方便。

再者,CTF 确实是学习 Web 安全的好途径。我在 11 月份的时候和很厉害的师兄一起参加了校赛 NCTF,虽然被虐出翔了,这个经历回想起来也很心痛,但在打比赛的时候解出题目是学习新知识的最大动力,也是检验自己能力的一种方式。至于关于 CTF 方面,这里就不展开讲了,星球上也有很多关于 CTF 的文章,都可以参考参考。

这半年来的学习经验也差不多言尽于此了。现在想想自己为什么头铁,两次考研非要选择这一行,反倒有些道不清原因了。本科的时候也是做信安的,不过更多的是放在了 Linux 系统内核安全加固方面,也做出了些东西顺带拿了个国奖。

可能是感觉底层这一块还是不太适合我,有些力不从心了,或者觉得这个方向的就业面太窄了,当时恰好有一位学长是搞 web 安全的,在我面前演示了一把拿到某个后台系统管理员权限,看着他打了几场 CTF 比赛,也许真的是兴趣使然,恰好到了考研的准备的阶段,于是就下定决心读研转 Web 安全方向。

虽然有些坎坷,现在也算是坐在这个位置上了,但也正是到了更高的平台上,才发现自己入行太晚了。相比而言,学弟学妹们大一大二就入了门,优秀一点的都已经拿了不少线下攻防大赛的一等奖、第一名,暑假去大厂实习。像我这种大龄选手已经没法比了,自己在学习的时候别人也在学,唯一的选择就是花更多的时间,下更大的功夫。讲真,虽说遗憾,但也无悔。

说到这里,一般都到了立 flag 的时间,我也不例外,明天就是 2020 年了,新的一年做个短期规划也是挺不错的。对于 Web 安全这条路,我加入之前这个平台之前,也很想学 Web 安全,也在各大论坛看了不少的经验贴,但说到底还是别人的经验,我不知道我要学什么,目标是什么,怎么样走下去,这些都非常地困惑我。

现在,我会继续跟着良哥的计划走,在年底之前完成 web 安全的剩余任务,同时开启渗透测试的新篇章,以某个 SRC 为目标体验渗透的过程。

在此期间,我也会在前期试着看一些现有的教程玩一玩 Hack the box 靶机,毕竟在当前的法律法规面前,打靶机还是不错的选择。

另外还有更重要的一条路线就是漏洞挖掘(也有可能是代码审计)+机器学习,毕竟是要出论文的,单独一个 Web 安全写不出什么太多的花样,希望自己能结合当前比较火热的 ML、DL 等作为自己日后的研究方向,目前在看吴恩达老师的机器学习课程,学完了基础知识再去研究具体的工作。要是哪位大佬正在搞这个,希望能带带小弟共同交流。

好了,文章的最后,就用一句话与小伙伴们共勉:学习之路,道阻且长,上下求索。


文章来源: http://mp.weixin.qq.com/s?__biz=MzI5MDQ2NjExOQ==&mid=2247491970&idx=1&sn=46794480d513c4537b2fe1b25ac01398&chksm=ec1dd1aadb6a58bcd38a285c00fe5fcdccefc734421e6d1a045c2ae23096d66490541d7d245b#rd
如有侵权请联系:admin#unsafe.sh