凡心所向,素履所往

凡心所向,素履所往

纯净水@流云的自留地

Java从反射到反序列化
java 从反射到反序列化的故事 #java 从反射到反序列化[TOC] 反射机制Java通过反射机制,可以在程序运行时加载,探知和使用编译期间完全未知的类,并且可以生成相关类对象实例,从而可以调用其方法或则改变某个属性值 从反射链的构造看java反序列化漏洞反射执行系统命令:【1】通过反射机制调用runtime.class的getMethod方法【2】继续调用invoke方法生成了一个runtime的对象,【3】最后执行该对象的exec方法,因此造成了命令执行 TransformerTransformer类的调用测试用例如下: package test.reflect; import ...
jackson反序列化漏洞_1
jackson反序列化漏洞_1[TOC] CVE-2017-7525漏洞简介Jackson enableDefaultTyping 方法反序列化代码执行漏洞 《漏洞通告】Jackson-databind远程命令执行漏洞通告(CVE-2017-7525)》[1]指出,Jackson是一个开源的java序列化与反序列化工具,可以将java对象序列化为xml和json格式的字符串或将两种文件反序列化为相应的对象。 Jackson-databind存在远程命令执行漏洞,因Jackson反序列化漏洞(CVE-2017-7525)采用黑名单的方法修复程序,CVE-2017-17485在开启enabl...
java反弹shell
java 反弹shell[TOC] 在渗透测试中,偶尔会遇到目标为java环境下的RCE,其中java命令执行的函数比较常见的分为Runtime和Process的类。这里遇到的坑以及解决方法。 runtime这里主要涉及 Runtime.getRuntime().exec()测试用例如下: import java.lang.Runtime; import java.lang.Process; public class exec { public exec(){ try{ Runtime rt = Runtime.getRuntim...
java sql注入
java sql注入[TOC] #0x01 简介主要内容如下:【1】易导致 SQL 注入的写法【2】如何避免和修复 SQL 注入 0x02 JDBC JDBC:Java Database Connectivity 是 Java 访问数据库的 API,不依赖于特定数据库 ( database-independent ) 所有 Java 持久层技术都基于 JDBC 0x021 SQL 注入写法ResultSet rs = st.executeQuery("select * from account where " + " id=" + testid + " and password=" ...
Apache Solr CVE-2019-0193 复现与学习
Apache Solr CVE-2019-0193 复现与学习[TOC] 简介(抄袭,具体功能没搞懂)Apache Solr是一个企业级搜索平台,用Java编写且开源,基于Apache Lucene项目。 主要功能包括:full-text search 全文搜索hit highlightingfaceted searchdynamic clustering 动态聚类document parsing 文档解析Solr可以像数据库一样被使用:1.运行服务器,创建collection12.从外部获取数据 - 向collection1发送不同类型的数据(例如文本,xml文档,pdf文档等任何格式...
fastjson 反序列化(二)
fastjson在接触了fastjson的rce后,感觉还是得调用下fastjson ,最好能自己写一个漏洞环境出来 fastjson 调用基础调用fastjson的方法 fastjson 常用序列化操作public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray public static final JSONObject parseObject(String text); // 把JSON文本parse成JSONObject public static final ...
json与jsonp的学习与分析
[TOC] json与jsonp的学习与分析json和jsonp的区别避免在后续的工作中把json和jsonp搞混,这里说明下其区别 json是一种传输格式,这个不用多说,而jsonp简单来说就是利用script标签绕过同源策略,获得一个类似这样的数据,只支持get请求 json劫持这里属于csrf的范畴,通过回调函数名称,进行敏感数据获取。 <script> function test(data){ //alert(v.name); var xmlhttp = new XMLHttpRequest(); var url = "http://...
DOM XSS从javascript中输出数据到HTML页面
DOM XSS从javascript中输出数据到HTML页面 存储或反射型XSS是从服务端输出到HTML页面 常见位置URL代入页面定义:通过js直接获取url中的参数,然后输出到HTML页面 通过window.location.search获取页面url传递的参数 function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); var r = decodeURI(window.location.s...
fastjson 1.2.47 rce
[TOC] fastjson 1.2.47 rce在渗透测试中 发现了fastjson的有漏洞的版本, 想着尝试下 危害恶意攻击者可以构造攻击请求绕过FastJSON的黑名单策略。例如,攻击者通过精心构造的请求,远程让服务端执行指定命令 对应payload{ "name": { "@type": "java.lang.Class", "val": "com.sun.rowset.JdbcRowSetImpl" }, "x": { "@type":"com.sun.rowset.JdbcRowSetImpl", ...
计划任务
计划任务[TOC] 计划任务linux 计划任务 结合 NC执行后门 查看crontab执行情况查看其日志的方式 tail -f /var/log/cron crontab 命令Usage: crontab [options] file crontab [options] crontab -n [hostname] Options: -u <user> define user -e edit user's crontab -l list user's crontab -r delete use...