
web学习
文章平均质量分 72
lmonstergg
每次学一点点,每次进步一点点!!!
展开
-
CALC-python和shell对字符的解析差异
python和shell对字符串解析差异原创 2022-12-10 16:38:18 · 851 阅读 · 1 评论 -
Java 反序列化漏洞-Apache Commons Collections3
Java 反序列化漏洞-Apache Commons Collections3前言javassist+TemplatesImplcom.sun.org.apache.xalan.internal.xsltc.trax.TrAXFilter前言之前已经学了CC1和CC2,接下来继续学习CC3。在CC2中我们用到了javassist修改字节码并配合TemplatesImpl攻击链来使用,因此我们很自然而然的想到,如果我们直接用javassist修改字节码并配合TemplatesImpl攻击链使用,就无需用I原创 2022-03-02 09:50:50 · 4866 阅读 · 0 评论 -
Java 反序列化漏洞-Apache Commons Collections2-TemplatesImpl攻击链
Java 反序列化漏洞-Apache Commons Collections2前言漏洞挖掘PriorityQueuePriorityQueue.readObject()PriorityQueue.heapify()PriorityQueue.siftDown()PriorityQueue.siftDownUsingComparator()TransformingComparator.compare()构造利用链前言前面分析了CC1,今天继续学习,分析下CC2。在 ysoserial中 CC2 是用的 P原创 2022-02-28 00:16:30 · 737 阅读 · 0 评论 -
Java 反序列化漏洞-Apache Commons Collections1-LazyMap 攻击链
Java 反序列化漏洞-Apache Commons Collections1-LazyMap 攻击链前言漏洞挖掘本地弹出POCTiedMapEntry.getValue()TiedMapEntry.toString()前言前面分析完了CC1的TransformedMap攻击链,但考虑到篇幅太大不利于查看,所以单独再写一篇CC1的LazyMap攻击链漏洞挖掘本地弹出POC这条链前面的挖掘就不说了,挖掘过程可以看看上一篇文章接下来我们看看lazymap的get方法可以看到get方法里面调用了原创 2022-02-11 23:07:05 · 3512 阅读 · 0 评论 -
Java 反序列化漏洞-Apache Commons Collections1-TransformedMap 攻击链
Java 反序列化漏洞-Apache Commons Collections前言前置知识TransformedMap前言前面已经学了一些Java反序列化漏洞的相关基础知识,今天就来学习分析一下Apache Commons Collections的反序列化漏洞环境搭建推荐大家直接使用maven搭建,网上都有很多教程这里就不多说了要寻找反序列化漏洞,最主要的是找到三个点:入口点(kick-off),触发点(sink),调用链(chain)前置知识TransformedMaporg.apache.原创 2022-02-08 14:22:12 · 2617 阅读 · 0 评论 -
[GKCTF 2021]CheckBot
[GKCTF 2021]CheckBot<html> <body> <iframe id="flag" src="http://127.0.0.1/admin.php"></iframe> <script> window.onload = function(){ /*原创 2021-11-25 10:56:19 · 3036 阅读 · 0 评论 -
[GKCTF 2021]easycms
[GKCTF 2021]easycms这题进去就如下图所示试着点了一下,所有东西都不能跳转,也就是说这个页面没啥可用的扫目录扫出了个admin.php,账号密码是admin/12345登陆后找一找有没有漏洞点在导出主题这里发现了个文件下载base64解码猜测存在任意文件下载拿到flag...原创 2021-11-22 13:07:07 · 600 阅读 · 0 评论 -
[GKCTF 2021]hackme
[GKCTF 2021]hackme进入题目后,题目如上所示,查看页面源代码提示nosql,这里推荐WHOAMI大佬的文章这里源代码我们也看到了php头,那我们就看大佬文章里php中的nosql注入部分就行这里数据包是json格式,我们试一下重言式注入被过滤了,提示也说了,可以用Unicode绕过成功绕过,这里放的是ne,意思为不等于,可以再试试eq,我把用户名的换成了eq,可以看到这个报错,应该是用户名对了,密码不对(ne和eq前面要有$符号的,csdn不知道为啥写不出来)既然如此原创 2021-11-21 13:36:33 · 2528 阅读 · 2 评论 -
[GKCTF 2021]babycat-revenge
[GKCTF 2021]babycat-revenge一进入题目界面如上所示,简简单单,没法注册,登录试了下弱口令还有注入都不是,也没有什么其他页面找不到线索就抓个包来看看好家伙,这个注册页面的注册代码露出来了,大概意思是得传入username和password才能注册,默认是不传值所以无法使用这里源代码显示传值得传json数据,且得是POST方式注册成功后登录又看到了熟悉的上传功能和下载功能,这里先抓包看看下载功能这个包这个下载的文件路径,不用多说也知道,任意文件读取吧这里它已经原创 2021-11-17 11:16:49 · 2581 阅读 · 0 评论 -
[PASECA2019]honey_shop
[PASECA2019]honey_shop进入题目后如下所示我试了下,能点的也就是一张图片还有可以买各种各样的物品这里我们能看到我们的金额只有1336,但是flag要1337,差1块才能买flag,既然买不了那就四处看看吧点了图片会将图片进行下载,抓包查看下这种包的形式可能会存在任意文件读取,不妨试试成功读取到了/etc/passwd,本想直接读/flag,但是没有这里这个任意文件读取暂时用不上后,再去找找其他地方吧这个是购买物品的包,传入的item参数是物品序号,也没啥有用的信息原创 2021-11-06 01:16:35 · 723 阅读 · 0 评论 -
V&N2020 公开赛 CHECKIN
V&N2020 公开赛 CHECKIN这题直接给出了源代码,不是很多,也很简单直接访问/flag是拿不到flag的而访问/shell虽然可以执行一条传入的命令,但是它会把存放flag的txt文件给删掉而且由于/shell路由返回的是1,所以我们是看不到命令执行后的回显的,那就只能弹shell了因为这里是python环境下,所以去找了python环境下反弹shell相关文章emem我就拿了这个改成了自己的vps地址,这里得注意一点,估计是靶机环境的缘故,得是python3才能执行p原创 2021-11-05 12:49:05 · 1346 阅读 · 0 评论 -
DASCTF Oct X 吉林工师 迷路的魔法少女
DASCTF Oct X 吉林工师 迷路的魔法少女挺久没做php的题目了,有点捞,我写的博客主要也都是分享自己的思路,欢迎各位大佬指点话不多说,直接进入正题这题题目直接给了源代码,典型的php命令执行题目吧,做这类题我一般喜欢先找可利用函数,毫无疑问,这题就是eval了这题目eval这里的利用好奇怪,说实话,可能因为做得少我是没见过这种形式的,所以直接百度了一下看看有没有相关的利用这里有点运气好haha,直接搜到了有篇文章有相关源代码这篇文章直接就分析了String2Array($dat原创 2021-11-04 00:26:48 · 375 阅读 · 0 评论 -
[2021祥云杯]secrets_of_admin
[2021祥云杯]secrets_of_admin这题也是直接提供了源代码老样子,先看看有没有啥危险函数,没发现的话只能一个路由一个路由慢慢的审了先看主路由吧有get和post两种请求方式get请求应该就是正常访问该页面post请求获取了username和passwd后,判断完数据类型就把他们传递给了DB.Login()DB.Login()应该是把用来判断用户输入的用户名和密码和数据库保存的是否一致来判断登录回到主路由的代码,如果登陆成功,他会把用户的一些信息仍token里接下来看原创 2021-09-12 00:47:29 · 1040 阅读 · 0 评论 -
[2021祥云杯]cralwer_z
[2021祥云杯]cralwer_z这题我在buu上做的,直接给源代码了,不知道比赛时是不是也这样这个文件的目录就是这些东西,还是js代码,有点烦,话不多说,审代码还是正常的从路由开始审起吧.这里提一下,我审代码喜欢先看各个路由,然后找危险函数,逆着去找利用链,我觉得这样的查找效果较好先看index.js的,这里的就是简单的注册代码,没啥可以利用的接下来看一看user.js吧我审js代码也不是很多,也不知道有啥危险函数可以执行系统命令或者是读取文件,就去网上搜了一下,基本上都是php的,估计这原创 2021-09-09 01:12:56 · 1169 阅读 · 0 评论 -
[De1CTF 2019]SSRF Me
1.斐波那契数列这是这道题我最初的想法,递归,但是这样好像会超时原创 2021-09-06 00:19:10 · 280 阅读 · 0 评论 -
[网鼎杯 2020 玄武组]SSRFMe
[网鼎杯 2020 玄武组]SSRFMe最近想学习下ssrf,就找了些文章看看找些题做做,学习的话推荐WHOAMI大佬的ssrf文章,内容全面且详细话不多说进入这次的题目,进入网址直接给出源代码<?phpfunction check_inner_ip($url){ $match_result=preg_match('/^(http|https|gopher|dict)?:\/\/.*(\/)?.*$/',$url); if (!$match_result) {原创 2021-08-29 00:56:14 · 3639 阅读 · 9 评论 -
[BSidesCF 2020]Hurdles
[BSidesCF 2020]Hurdles这题进入后如上图所示,按要求访问/hurdles按要求访问方式改成put访问路径加上/!get参数的值为flag传入”&=&=&“之前需要对其进行url编码,得%26%3D%26%3D%26,最后加上任意值:这里的提示是其实仔细观察可以发现是两行,所以需要让&=&=&的值等于%00(换行符),其后还包含了一个换行符,也是进行url编码,%2500进行URL解码之后就是%00,得:%2500%0原创 2021-08-24 01:30:16 · 701 阅读 · 2 评论 -
[SWPU2019]Web3
[SWPU2019]Web3进入题目是一个简单的登录界面,没有注册,用户名和密码都是自己随意输入,源代码也没有可用信息随便试一个用户名密码登录看看会将用户名显示出来,那猜测这里可能存在ssti模板注入漏洞,但尝试了各种可能的模板注入姿势,发现都不行,这里还有个upload按钮,考点可能在这边,点击以后页面如下图所示提示没有权限然后就跳转到登陆界面了。这就很头疼了,完全不知道考点是啥,但毫无疑问的就是考点一定是flask架构相关的,尝试Google一波看到了一些flask架构除了ssti之原创 2021-08-22 01:07:45 · 808 阅读 · 0 评论 -
[GWCTF 2019]你的名字
[GWCTF 2019]你的名字打开题目后界面如上所示,你输入什么名字后就会显示出来说实话,这种题不出意外应该就是模板注入没跑了试了下{{2+2}}直接报错,还是报的php的错,但是{2+2}就可以正常显示出来,这就说明{{可能被过滤了,而{可能没被过滤,所以我们再试一些只要{}就能用的句子试试,如{% set a=“test” %}执行完了以后虽然没有回显但也没有报错,说明正常执行了这句话,确定了考点是模板注入后就得想想怎么绕过了上网找了一篇模板注入绕过相关文章这里用了if语句执行命令原创 2021-08-20 00:36:25 · 1997 阅读 · 1 评论 -
[HITCON 2016]Leaking-nodejsVM沙箱逃逸
[HITCON 2016]Leaking最近想学下nodejs相关的题目,所以去buu上又找了一道来做进入题目后如上图所示,直接给出了源代码,老样子,拿出之前收藏的nodejs相关安全问题来对比着看看,我发现这里用了VM沙箱,那最有可能考的就是VM逃逸了emem由于之前没做过,说实话,光看这个完全不知道该怎么做,还是老实找个大佬的WP来看看吧那我们先来分析下代码,下面这段代码是整道题的核心/* Orange is so kind so he put the flag here. But原创 2021-08-19 00:51:51 · 762 阅读 · 0 评论 -
[GYCTF2020]Ez_Express-原型链污染学习
[GYCTF2020]Ez_Express-原型链污染学习最近学习下nodejs相关的题目,所以做了这道题进入题目界面长这样简单的试了下功能,也就是一个登录注册按钮,登陆后如下所示要求需要ADMIN登录,这是一个不能注册的账户,而且我们又不知道密码没法进行下去的时候试一试扫描目录,结果还真扫出了源代码通过审代码我们发现,注册的时候调用了safeKeyword函数,这个函数使我们注册时不能用admin,但是又需要题目要求用ADMIN登录才行这里我是正好看了做上一道js题目时收藏的tric原创 2021-08-18 01:10:48 · 2809 阅读 · 0 评论 -
[BSidesCF 2019]Pick Tac Toe
[BSidesCF 2019]Pick Tac Toe进入环境后题目如下就一个reset按钮,除此之外,什么也没有看看源代码吧由此我们不难看出,九宫格每一个格子对应一个id,源代码中也已经提示了发包的方式,那这题应该是需要我们去赢得这场游戏的胜利这游戏正常下有点难赢,但它有个漏洞就是就算画了圈圈的地方我们也能打叉叉,胜利后成功拿到flag...原创 2021-07-10 00:56:21 · 287 阅读 · 0 评论 -
[极客大挑战 2020]Roamphp1-Welcome
[极客大挑战 2020]Roamphp1-Welcome题目进入后环境如下一开始我还以为是题目环境出了问题,后来注意到报错是405,百度了一下405才知道是开发人员设定的,可能是请求方式不对这道题一开始用的是GET请求报了405,那换成POST试试成功爆出源代码,下面是一个常见的php中sha1函数的绕过,用数组就行在phpinfo的信息中成功拿到flag...原创 2021-07-09 23:55:19 · 790 阅读 · 0 评论 -
[RootersCTF2019]babyWeb
[RootersCTF2019]babyWeb进入环境如下他已经提示SQL查询,过滤了:union、sleep、’、"、or、-、benchmark我们用order by测试字段数我们发现order by 1和order by 2都是正常显示,到了order by 3就如下报错,说明只有两段,一个为uniqueid另一个应该就是flag那么应该就是输入id判断登录,即可,尝试万能密码登录:1 || 1=1 limit 0,1拿到flag...原创 2021-07-09 23:38:16 · 387 阅读 · 0 评论 -
[pasecactf_2019]flask_ssti
[pasecactf_2019]flask_ssti进入题目后如下图所示因为题目本身就提示ssti了,我也就直接尝试有没有过滤了这里过滤了下划线,使用十六进制编码绕过,_编码后为\x5f,.过滤的话我们直接用[]包含绕过这里过滤了单引号,我们用双引号绕过这题过滤已经找完了,接下来是构造相当于执行{{class}}相当于执行{{class.bases[0]}}相当于执行{{class.bases[0].subclasses()}}下面贴一个脚本用来找可用类import js原创 2021-07-05 00:38:17 · 2850 阅读 · 6 评论 -
[FireshellCTF2020]Caas
题目一进去如下所示他要求我们输入代码然后其帮我们编译emem试了下<?php phpinfo(); ?>看到这报错,说实话,我也不知道报的是啥错平时一般用的php和python较多,但按照Sorry, we could not compile this code.,这意思百分之百不是php,那就上网搜一些别的语音的代码#include <stdio.h> int main() { printf("Hello, World! \n"); return 0原创 2021-07-04 00:13:50 · 598 阅读 · 0 评论 -
[红明谷CTF 2021]write_shell
[红明谷CTF 2021]write_shell题目直接给出了源代码,看了一下源代码,利用点应该就是利用file_get_contents函数写shell获取我们需要的信息在此之前我们还需要找到要写入shell的文件路径,这时我们可以发现可以通过?action=pwd进行查看...原创 2021-06-25 16:05:59 · 1995 阅读 · 0 评论 -
[安洵杯 2019]iamthinking
[安洵杯 2019]iamthinking这啥也没有只能扫目录了,成功扫到源码大致看了一眼它是啥架构的,发现好像是topthinkGoogle一下才知道这就是thinkphp既然是thinkphp那就搜一搜相关版本的漏洞吧搜了一下基本上都是用session进行任意文件写入,很遗憾的是这题没有开启session,所以不可能是这个漏洞,还是回来看源代码叭又看到unserialize了,那这道题不出意外考察的就是反序列化漏洞了。但是前面还有个正则匹配需要绕过,在此之前先做个小实验看看传进了什原创 2021-05-16 17:45:24 · 958 阅读 · 5 评论 -
[SUCTF 2018]annonymous
[SUCTF 2018]annonymous这题代码很少,就这几行首先创建了一个匿名函数,会输出flag接着openssl_random_pseudo_bytes(32)生成一个随机数,然后将其转成了十六进制,将其赋值给$hash接着SUCTF_和hash拼接成一个新的函数名,函数会执行上面构造的匿名函数所以,要想获得flag就只有两种办法,直接执行匿名函数,或者执行SUCTF_和hash拼接成的新函数下面的func_name可以传一个函数名进去并执行该函数这题最初想着直接传$MY进去看能原创 2021-05-13 14:23:07 · 997 阅读 · 0 评论 -
[NPUCTF2020]ezlogin-XPATH注入学习
[NPUCTF2020]ezlogin-XPATH注入学习这题进入后就是一个简单的登录页面,拿御剑没有扫出别的东西,简单的sql注入试了一下也没有任何回显,爆破的话他这里有一个token一直在刷新,所以会有点麻烦,应该也不会拿爆破来考别人后来看了别人的WP才知道是XPATH注入,以前没遇到过,也不是很了解,于是去找了篇相关文章顺带学习一下这些是XPATH的一些基础语法和介绍从这里可以看到它和sql注入还是很相像的,只不过XPATH注入好像没有注释符把后面的都注释掉,所以需要我们去构造闭合后面的原创 2021-05-13 11:00:26 · 746 阅读 · 0 评论 -
[SUCTF 2018]MultiSQL-MySQL预处理学习
[SUCTF 2018]MultiSQL-MySQL预处理学习进入题目后,注册账户登录编辑头像可以上传文件,但是上传了php文件还是会变成jpg格式再看用户信息这里,id=2那里可以随意更改,存在越权,1就是admin这里接下来要用到MySQL的预处理,参考文章setMariaDB [(none)]> set @a='select version()';Query OK, 0 rows affected (0.00 sec)MariaDB [(none)]> select原创 2021-05-11 14:58:33 · 488 阅读 · 1 评论 -
[CISCN2019 华东南赛区]Web4
[CISCN2019 华东南赛区]Web4原创 2021-05-11 00:16:31 · 365 阅读 · 0 评论 -
PHP 原生类的利用
DASCTF做题学习-反序列化&SSTIez_serializeez_serialize这题直接给出了源代码,源代码也都挺简单的 <?phperror_reporting(0);highlight_file(__FILE__);class A{ public $class; public $para; public $check; public function __construct() { $this->class原创 2021-04-20 00:21:30 · 3645 阅读 · 0 评论 -
[VNCTF 2021]Easy_laravel-PHP代码审计&CVE-2021-3129学习记录
[VNCTF 2021]Easy_laravel-PHP代码审计学习记录上次做完那道代码审计后,好巧不巧,又有新的php代码审计题,也是Laravel,话不多说,进入正题这题一进入就是这个页面,看到这个页面就想起了之前拿CVE打过的一个靶机,于是看了下版本号找找有没有CVE可以打谷歌搜了下laravel 8.22.1 exploit,很绝望,这个版本几乎都是CVE的修复版本,没有可用的CVE,这题还提供了源代码,那就只能慢慢看了又是熟悉的N多个文件夹,依旧是先全局搜索_destruct找可以用原创 2021-04-05 13:20:19 · 1786 阅读 · 0 评论 -
[CISCN2019 总决赛 Day1 Web4]Laravel1-PHP代码审计学习
题目就是简单的几行代码,看到了反序列化函数,还提示了有源代码,那就说明得审代码找POP链咯源码下了文件还挺多的,这会就有点懵逼了,文件这么多一个一个的找得找到猴年马月啊。无奈之下上网翻一翻网上审Laravel的文章,发现了可以先全局搜索缩小范围(Sublimetext中是快捷键ctrl+shift+f),提高速率,我搜了下_destruct找到了不少,双击就可以去到文件文件里面具体查看,接下来就是一个个去看有没有发现有用的吧第一次审这么大的文件,东西太多太杂,没啥经验,没看出啥,只能找篇大佬的.原创 2021-03-16 16:23:54 · 918 阅读 · 1 评论 -
[VNCTF 2021]Ez_game-JS类题目学习记录
[VNCTF 2021]Ez_game-JS类题目学习记录之前没咋做过js的题,也没写过js项目,但还是能简单看懂一些js代码,基础有点薄弱,所以记录下这次的做题。这就是游戏的开始叭,你有一个回旋镖作为武器,然后金币是0,生命值是3,这个游戏就是需要你打怪过关,应该是让你通关才会给你flag,那就先玩一局看看叭手残党第二关就没了,玩了一局唯一的感受就是好难玩,不过死后它提示可以按ESC,按了下应该是重生,不过属性保留emem啥也不说既然这个游戏要通关才给flag,那我就找找过关函数还真有,原创 2021-03-15 01:03:29 · 2458 阅读 · 0 评论 -
[GWCTF 2019]mypassword-做题记录
[GWCTF 2019]mypassword-做题思路学习这题给了个朴实无华的登陆界面,有注册登录界面那肯定得试试sql注入,很遗憾没有试出来。那就找找源代码看看有没有有价值的东西只发现加载了一个login.gs,emem还是没发现有什么能用的,没办法那就注册一个号登录进去看看吧登录进去主页面会有你的用户名可控,我就想会不会有啥ssti或者搞些标签进去,结果可想而知,<,>,{,},’,"这些符号应该被过滤了,那这题就不是这么玩的去看看别的页面,feedback.php这里应原创 2021-03-13 22:59:45 · 452 阅读 · 0 评论 -
[EIS 2019]EzPOP-PHP代码审计学习
[EIS 2019]EzPOP-PHP代码审计学习作为一个不太聪明的WEB安全菜鸟,代码审计一直不咋地,正好遇到一道题,记录一下学习过程<?phperror_reporting(0);class A { protected $store; protected $key; protected $expire; public function __construct($store, $key = 'flysystem', $expire = null) {原创 2021-03-09 15:02:50 · 324 阅读 · 0 评论 -
[GoogleCTF2019 Quals]Bnv-XXE学习记录
[GoogleCTF2019 Quals]Bnv-XXE学习记录XXE学习知识点XMLDTD内部实体外部实体通用实体参数实体实例做题应用([GoogleCTF2019 Quals]Bnv)知识点XML这里先了解下xml的基本格式- 所有 XML 元素都须有关闭标签。- XML 标签对大小写敏感。- XML 必须正确地嵌套。- XML 文档必须有根元素。- XML 的属性值须加引号看一个例子<bookstore> <!--根元素--><book原创 2021-03-06 00:20:49 · 1658 阅读 · 0 评论