如何 hack/防止被 hack 线上服务?

2017-05-25 02:51:49 +08:00
 whalegia

组里面在做的服务准备上线了,上线之前有一个内部安全检查。就是大家随机交换自己实现 /维护的服务,尝试去 hack 别人写的 services。

服务具体是 Restful APIs,有面向客户端的,也有面向其他内部服务的。如果能看到或者拿到不应该看到的内容,文件,那么就认为服务有漏洞。 不过漏洞当然不局限与这些,压力和表现测试也是一部分。

因为是内部组安全检查,所以能直接看到源码。

请问大家有没有什么 hack 经验呢……我还蛮迷茫的,不知该从何入手。当然也担心自己写的东西会不会太不健壮…… orz

谢谢。。。

1990 次点击
所在节点    问与答
11 条回复
whalegia
2017-05-25 08:31:58 +08:00
不要这样,来点人好不好。
neighbads
2017-05-25 09:10:38 +08:00
专业的人干专业的事。。。
hcymk2
2017-05-25 09:26:04 +08:00
先上 sqlmap .
mcfog
2017-05-25 09:41:36 +08:00
黑盒上各种工具扫
白盒就靠经验了,比较简单的思路是先找到危险方法调用,分析传入参数的来路(其实也有工具能实现自动),或者找对方的 escape 的地方,灯下黑效应,错误的 escape 可以直接用,或者“自以为 ”全都 escape 了的部分绕过后容易有弱点
whalegia
2017-05-25 10:44:45 +08:00
@hcymk2 虽然 sql 注入我不太懂,但是我们的数据库操作指令都被封装在逻辑关系下面了。也就是说任何的 request 都要先被逻辑分析一遍,再和数据库接触。
所以这样的话也要考虑 sql 注入吗?

@mcfog 谢谢谢谢。我非常新手啊……所以可能问的问题会比较傻。分析传入参数的来路是指?我们服务收到 request 先做的是 user authorization 验证,如果用户不存在或者不合法请求就直接拒绝了。所以是要考虑能否绕过 auth 验证吗?
escape 我也不懂……什么是 escape ?
hcymk2
2017-05-25 11:01:27 +08:00
@whalegia
SQL 是否能被注入和是否封装在逻辑关系下面其实没有关系.
https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/09.4.md
lyragosa
2017-05-25 11:11:22 +08:00
我也完全不知道应该怎么弄,连百合……啊不,白盒都不知道。

我也老觉得自己的网站一堆漏洞,奈何不知道从哪里着手测试,果然不是当黑客的料
c0878
2017-05-25 11:41:19 +08:00
也可以买第三方的入侵检测测试
realpg
2017-05-25 15:10:51 +08:00
现在我们 PHP 的靠谱程序员都捕会写出可能被注入的漏洞了……
feng1234
2017-05-25 18:18:25 +08:00
http://www.freebuf.com/articles/web/135278.html 可以参考这个,给了一个方向
whalegia
2017-05-27 13:47:59 +08:00
认真负责的我更新了总结。
Why am I so responsible. 表扬我自己。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/363603

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX