java反序列化+URLDNS链子
什么是序列化反序列化漏洞,其实在之前的python和php早就接触过了,但是其都没有java那么出名,java耳熟能详的漏洞好像基本都是java反序列化造成的。java的序列化的目的其实和其他语言很相似都是为了远程传输对象,保存对象等。java的序列化会将一个对象处理成一段二进制的字符,这使得传输效率的提高和存储空间的下讲,对提升性能来说是非常重要的。下面我来演示一些序列化和反序列化的过程
序列化和反序列的代码实现类person.java12345678910111213141516171819202122import java.io.*;//实现 Serializable 接口,表示该类可以被序列化和反序列化public class person implements Serializable{ private String name; private int age; //有参构造方法,实现赋值 public person(String name,int age){ this.name = name; this ...
长城杯复现
SQLUP登陆之后文件上传不多说
CandyShop在比赛的时候以为这个是用条件竞争来写,我太傻了赛后看了wp 发现SECRET_KEY竟然可以爆破出来使用flask-unsign可以对key进行爆破用法123456-----------------------------加密PS C:\Users\24882> flask-unsign -d -c ".eJwNy0sKgCAQANC7zLpFTqTWZWJ0xpDQwM8iorvn9sF7wdcSjnZfkmEHH3CxOHtjcWPSMqvgtCOFmp2xTM4gB8srTBBZcovtGevsUtugXqVkSjKIOMUM3w-UGR5A.Zt2O4Q.FR2Rf6GsDgArFUTCs69-3mqInJ8" -S "a123456"-----------------------------解码PS C:\Users\24882> flask-unsign -s -c "{'csrf_token': 'cf23820c782 ...
RMI
原本是打算在放假的使用学java的但是java内容太复杂了还有我太懒了,放假颓废了一个暑假,这才一直到开学才幡然醒悟,但是该说不说在上课的时候来学Java效率比在家里高多了嘿嘿本问学习与p牛的java安全漫谈与GitHub上的项目javasec什么是RMI所谓的RMI其实是java的一种远程导入库的一种方式,其是由Registry,Sever 还有Client组成通过图我们也可以看出来其交互过程为,Server创建远程对象而后组成Regisry,Client通过Regisry来查询自己要获取的对象。而后Regitry来放回远程调用对象的存根,而后stub与skeleton进行交互,而skeleton与远程对象进行交互
但是经过查阅java早在Java 2 SDK 1.2是就已经不使用skeleton了,而stub也不需要用户手动定义,所以真正的交互应该是stub和远程对象进行交互。
RMI的服务的分为接口,远程对象和注册表我们使用代码来对RMI进行理解12345678910111213141516171819202122232425262728293031323334353637383 ...
ctfshow 元旦杯刷题
easy_include12345678910<?phpfunction waf($path){ $path = str_replace(".","",$path); return preg_match("/^[a-z]+/",$path);}if(waf($_POST[1])){ include "file://".$_POST[1];}
这道题目其实并不算难,只是有一个小点不知道导致一开始就卡住了.这个点就是利用file://localhost/etc/passwd可以像上面那样包含文件。而后的方法就很多了我一开始像到的是利用session进度上传来上传一个webshell然后进行文件包含。也就是这题的法一
法一session上传进度+文件包含=getshell我在之前学session反序列化时有学过session上传进度,这是当开启了session.upload_progress.enabled时我们POST一个与session.uplo ...
刷题
太久没更博客了,放假的时候放懒了,属于是放假前XXX放假后XXX了。下次暑假不能再在家里闲着了,得去打打HVV了。由于太久没更博客也不知道更些什么,就更一些刷题的过程吧。ctfshow web489这一题和web488很像算是升级版,所以我就记一下这一题。首先我们可以再参数action下发现文件读取漏洞但是经过尝试发现其并不会报错而web488存在报错,将源码扒下来。回发现其再file_class.php添加了error_reporting(0);这导致网页没有报错。我们审计代码会发现extract($GET)而这个函数就存在了参数覆盖,即我们可以直接覆盖sql这个变量来进行sql注入或者绕过登陆但这还无法得到flag,这道题目需要我们根目录的flag。进一步审代码会发现file_class.php下存在file_put_contents函数那么思路就有了,我们一步步向上审代码最终会再index.php发现只要我们成功登陆就可以通过操作username的值来操控content的值而缓存cache::create_cache会在cache/md5(‘index’).php,下写入。那么我 ...
java反射
放假前就一直想着要在暑假学一下java的漏洞,大体看了一下发现java的内容不是一般的多,就从java的反射开始学吧。java的反射机制Java的反射机制是Java非常重要的动态特性,我们学过的php就有着丰富的动态特性。而java并没有php那么的灵活,所以java反射所带来的动态特性就显得和重要了。通过反射我们不仅可以得到任何类的成员方法,构造方法,成员属性,还可以实例化类,调用任意的类方法、修改任意的类成员变量值等
放射的步骤放射的步骤分为如下几个12341.反射获取类2.获取类的方法3.创建类的实例化对象4.使用类的方法下面我会给出每个步骤所使用的函数。
反射获取类forName在反射中最常用到的获取类的函数就是forname。其有如下两种调用方法12Class<?> forName(String name)Class<?> forName(String name, **boolean** initialize, ClassLoader loader)Class<?> forName(String name, **boolean** init ...
ctfshow西瓜杯wp
暑假还是有点犯懒了,哎意料之中,上周ctfshow西瓜杯的题目我看了一些,感觉还是很有价值的所有复现一下。CodeInject简单闭合一下前面的就可以命令执行了\
easy_polluted和ciscn线下的python污染就不多说了
Ezzz_php这题做道了一半但是因为我是最后一天下午才打的这个比赛导致我最后虽然查道了如何将file_get_contents升级为命令执行的文章但是还是没有写出来
反序列链1234567891011121314151617181920212223242526272829303132<?php highlight_file(__FILE__);error_reporting(0);function substrstr($data){ $start = mb_strpos($data, "["); $end = mb_strpos($data, "]"); return mb_substr($data, $start + 1, $end - 1 - $start);}cl ...
checklist
信息收集(找到站)1.目录扫描2.web框架识别3.
CISCN2024线下赛后感
第一次打CISCN结果是大大出乎了我们的意料,本来是冲着三等去的没想到最后拿了个20名(我个人认为我在这次线下赛的表现还是非常出色的,嘿嘿),web的break和fix都差一题node.js(考node.js是一点都不会啊也没存文章,)我记得刚打出python原型链污染的时候排名直接到了11名当然很快就掉下去了师傅们太强了
wp签到不必多说,f12submitbreak:he幽默文件上传,盲盒测试时发现可以上传php文件,幽默文件上传,队友和我说这个只能上传png图片,并且检测php,所以我直接上传了端标签的php马并再前面添加了图片文件头,赛后发现其应该只是再文件里检测了php之类的
fix:直接加图片文件尾的白名单即可
粗心的程序员break分析源码我们可以发现,其在home.php直接将修改的用户名加到了config.php里而config.php是再web页面的是能被解析到的。而其将写入的内容前加了个注释,且没有过滤?<>=那么这就可以直接使用?>来饶过注释再利用短标签来执行命令再使用#来注释后面拼接的内容,即可命令执行
fix检测?,>,<等其就 ...
再谈外网信息收集(微信小程序)
好久没有水博客了。主要是最近考试还有,打攻防太忙了,刚打完上周的攻防,做了5天的牢主要都是在信息收集,发现攻防要打的好,信息收集是一定要做好的。从小程序开始信息收集打了这次攻防,我发现现在各种系统后台的弱密码已经非常少了。直接使用fofa等工具来找很容易出现打歪的情况。而在这次攻防里我学到了可以从小程序来进行信息收集,因为小程序是近几年才兴起的,这回导致很多公司对小程序的安全并不重视,这就会导致小程序背后的网站经常会出现,弱密码和常见的框架漏洞。
很多小程序虽然是放在了微信上但是其实就是魔改的网站罢了,我们通过bp来抓包会发现很多小程序的很多功能走的都是http的协议,题目http报文我们就可以发现其所连接的网站,从而找到其后台网站,而这些后台网站一般都是很薄弱的资产,大部分存在弱密码,而且很多是使用的开源宽假(而且是老版本的)而通过小程序找到的网站我们有可以在通过ip反查,爆破子域名等来扩大资产。这里我贴一个大神写的文章微信小程序的修炼五脉这位大神的这个系列文章共有五篇。干货满满。