用户
搜索
  • TA的每日心情
    慵懒
    2019-2-21 01:13
  • 签到天数: 96 天

    连续签到: 1 天

    [LV.6]常住居民II

    i春秋作家

    从未进过后台和拿过shell的菜鸟。求大佬带

    Rank: 7Rank: 7Rank: 7

    38

    主题

    94

    帖子

    1683

    魔法币
    收听
    2
    粉丝
    5
    注册时间
    2017-1-24

    i春秋签约作者春秋文阁

    我是salf i春秋作家 从未进过后台和拿过shell i春秋签约作者 春秋文阁 楼主
    发表于 2019-2-23 21:03:31 1219065
    本帖最后由 我是salf 于 2019-2-23 21:10 编辑

    前言

    首先定义本文所说的现代化网站. 现代化网站是指符合以下多个特征的对外服务.

    • 储存,数据库,网站程序等服务器高度分离

    • 实现现代化前端技术, 如三大框架, html5新api, websocket

    • 基于虚拟化技术的服务部署

    • 使用现代后端框架,如ssm,think5,gin,django

    • 外部服务高度集成

    • 多种客户端,包括Android,Ios,windows

    篇幅有限, 不再列举,但相信读者应该能理解笔者的意思.

    不属于现代化网站最典型的例子就是 下载cms,安装lnmp,直接安装网站程序.
    现在渗透教程基本都是基于不属于现代化网站的假设(实际上我还没发现基于渗透现代化网站假设的教程)

    现代化特征对渗透测试的影响

    笔者按自己的思路逐个列举有影响的特征

    CDN/反向代理

    使用了CDN将会隐藏真实IP, 导致常规端口扫描,弱口令扫描全部失效.
    但可以通过寻找真实ip来解决.
    反向代理则无解, 甚至可能只把代理服务器暴露于公网.敏感服务全在内网

    对绕过CDN这个问题, 已经有了一定的研究.有了安全工具, 如fuckcdn

    数据分离

    上传文件服务器分离,将导致上传webshell技术失效, 很显然文件服务器是不可能执行webshell的. 上传危害最多只能达到上传html

    websocket

    之所以专门把websocket作为一点, 是因为感觉websocket属于盲区, burp,浏览器均不支持websocket的渗透测试.

    新的h5 api

    html5提供了新的api,但是这方面的安全问题还没有被开发人员重视.这个可以从hackone平台上的漏洞报告看出.例如DOM Based XSS in www.hackerone.com via PostMessage .

    postmessage这类api的输入是不可控的,如果不进行控制, 就是安全问题.

    前后端分离

    使用三大框架(vue,react, angular)的前端, 对后端进行分离. 也就是不再将url参数直接渲染到html,而通过JavaScript操作.反射xss全部失效,常规储存xss在框架的安全性下也变得渺茫.
    JavaScript操作带来的xss反而变为主流.这也对渗透测试人员阅读JavaScript代码带来了挑战
    也带来了部分好处,由于在前端操作,后端暴露的接口将会更多.

    后端框架

    应用了框架后,简单注入全部失效,csrf部分失效, id=x这种低级注入消失.出现注入的点趋向二次注入, 编码注入. sqlmap是不提供原生支持的.

    外部服务接入

    对某些功能不自行进行开发,使用其他公司的服务.这部分功能的安全性取决与该公司的安全水平, 不过真挖出漏洞就属于通用0day了.

    由于对接入服务的理解,接入处反而容易出现问题, 比如未预料的异常.(接入开发: ???,这个问题你怎么不在服务上处理.服务开发: ???,这个你怎么不在接入处处理)

    多服务端

    提供了多平台客户端, 这就对渗透测试多平台渗透能力发出了挑战.
    不但要会web,还要会安卓/ios渗透测试, 反编译(客户端总是会有一些未公开的api).甚至还有IOT

    风控

    好的风控系统 基本阻止了邮箱/短信轰炸.对需要爆破的漏洞也降低了危害.

    无服务器

    Sass(系统即服务), Fass(函数即服务)等各种服务公司不断涌现,  不需要购买服务器就能进行服务.可能出现刚拿下shell,想内网渗透,发现实际上服务是在某Sass上.或者发现服务api是在Fass上的,根本没有服务器

    虚拟化

    docker提供了优秀的服务分离,就算拿到了shell,也只是拿到了容器的shell. 容器虚拟化不一定安全,但是现在对这方面的研究还不是很多, 完全没有对绕过UAC的研究多.

    对安全教程的思考

    现在一些安全教程还是停留在旧时代, ' and 1=1,
    </x><script>alert(1)</script>固然是基础,挖掘思路也很重要.
    但是随着技术的发展, 渗透和开发技术也会走的更近, 新开发技术的爆发式增长,不可能像列中间件漏洞一样全部写出它们的渗透技术.就算有人写出来,等写出来黄花菜都凉了.
    安全教程应该更强调编程, 而不是培养只会用扫描器的驻场工程师.令人欣慰的是现在年轻的渗透测试人员大部分都会编程,还不止一门(就笔者圈子来看).

    对安全工具的思考

    扫描器

    随着技术的扩散,老式扫描器未来会面临失效.不支持浏览器模拟,只会抓a标签的扫描器, 对前后端分离无能为力. 基于流量和基于爬虫的扫描器会合并, 走向模拟获取流量进行扫描的模式
    对app的扫描器目前不支持对web的渗透测试.

    尾言

    现在正是承前启后的时代,旧的开发技术未被淘汰,新的开发技术正在发展, 谁会在这个时代引领潮流, 或是被淘汰.让我们拭目以待吧


    本帖被以下淘专辑推荐:

    • · 喜欢|主题: 1, 订阅: 0
    个人博客 https://blue-bird1.github.io/
    我是salf i春秋作家 从未进过后台和拿过shell i春秋签约作者 春秋文阁
    沙发
    发表于 2019-2-23 21:06:24
    [ 本帖最后由 我是salf 于 2019-2-23 21:20 编辑 ]\n\n[ 本帖最后由 我是salf 于 2019-2-23 21:20 编辑 ]\n\n开发出来祭天
    个人博客 https://blue-bird1.github.io/
    使用道具 举报 回复
    发表于 2019-2-25 09:11:52
    文章写的很有深度,赞
    使用道具 举报 回复
    发表于 2019-2-25 19:22:47
    写的很不错,收藏了。
    有一天他会突然觉得累了甚至忘了初衷 放弃了梦想也许因为年纪的关系奔波于现实 然后拉黑了网络认识的所有人或者说不用了一个号码换了一个QQ 那么记得他叫大叔 这个网络他曾来过
    使用道具 举报 回复
    发表于 2019-2-25 21:44:29
    现在感觉小白们学习的越来越渺茫,向往大佬们的那种激情慢慢磨灭了。不知道是不是只有我有这种感觉,虽然我也挖不到洞
    使用道具 举报 回复
    发表于 2019-3-1 09:27:34
    好文!!!!
    站越来越难搞,因为漏洞隐藏得越来越深,需要仔细才能发现
    使用道具 举报 回复
    谢谢,写得真好,解答了我这几天的疑惑!
    使用道具 举报 回复
    发表于 2019-3-3 21:50:17
    写的很深,作为一个初入坑的小白,不得不努力提高自己的编程水平
    使用道具 举报 回复
    确实带来了思考。
    使用道具 举报 回复
    发表于 2019-3-14 18:41:03
    确实发现现在的xss、sql注入之类的漏洞发现的比较少了,有的话也是要二次三次四次的去分析。现在大部分都是逻辑漏洞,都要先熟悉业务之后在进行挖掘。
    使用道具 举报 回复
    发表于 2019-3-15 10:12:38
    还是得老老实实学编程
    使用道具 举报 回复
    发表于 2019-3-26 08:57:40
    唉学习资源也不像以前了
    使用道具 举报 回复
    转播,试试这个功能...
    使用道具 举报 回复
    发新帖
    您需要登录后才可以回帖 登录 | 立即注册