首页
友链
联系我吧
Search
1
狮子鱼CMS ApiController.class.php SQL注入漏洞复现
2,438 阅读
2
SSRF绕过总结
1,125 阅读
3
存储桶接管-漏洞复现
892 阅读
4
k8s安装及部分漏洞复现
850 阅读
5
春秋云镜免费靶场记录10.11
813 阅读
web
welcome
漏洞复现
挖洞实战
总结
登录
/
注册
Search
n00bk1ng
累计撰写
36
篇文章
累计收到
9
条评论
首页
栏目
web
welcome
漏洞复现
挖洞实战
总结
页面
友链
联系我吧
搜索到
27
篇与
web
的结果
2020-10-21
buuctf刷题(2)
10.15[MRCTF2020]Ez_bypass1.强比较绕过:a[]=1&b[]=2 2.有关is_numeric():用来判断是否为数字或者数字字符串,是为True,否为False,可以使用%00来进行传入,%00无论放在何处都为非数值,%20只能放在数值之后。 网址:https://www.cnblogs.com/xhds/p/12312223.html[GXYCTF2019]禁止套娃1.githack使用方法:python githack.py 网址 2.无参数RCE:使用不带参数的函数套娃来拿flag 3.scandir(.)函数可以用来扫描当前目录下的文件。current(localeconv())永远都是个点,所以通过构造可以扫描目录。current可以用pos代替。 4.array_flip()函数:交换数组的键和值,array_rand()函数:返回数组中的一个随机键名。构造array_rand(array_flip)具有随机性,需要多次请求才可以。 5.array_reverse()函数:将数组以相反的顺序返回。于是可以利用该函数加上next()函数输出flag.php。 6.session_start()指定php使用session,然后使用session_id()函数获取session,因为在PHPSESSID中可以有数字和字母出现。 7.在cookie中加入PHPSESSID=flag.php,然后利用session_id(session_start)就可以获取flag,可以利用file_get_contents()、readfile()、highlight_file()、show_source()中的函数进行读取。10.18[GXYCTF2019]BabyUpload1.常规文件上传,使用.htaccess文件,不过在此处过滤了jpg,使用png文件。[安洵杯 2019]easy_web1.sort /flag读取flag。sort:sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。 2.由于对\的过滤没有做好,可以使用ca\t fl\ag的方式读取flag 2.md5强碰撞:a=%4d%c9%68%ff%0e%e3%5c%20%95%72%d4%77%7b%72%15%87%d3%6f%a7%b2%1b%dc%56%b7%4a%3d%c0%78%3e%7b%95%18%af%bf%a2%00%a8%28%4b%f3%6e%8e%4b%55%b3%5f%42%75%93%d8%49%67%6d%a0%d1%55%5d%83%60%fb%5f%07%fe%a2&b=%4d%c9%68%ff%0e%e3%5c%20%95%72%d4%77%7b%72%15%87%d3%6f%a7%b2%1b%dc%56%b7%4a%3d%c0%78%3e%7b%95%18%af%bf%a2%02%a8%28%4b%f3%6e%8e%4b%55%b3%5f%42%75%93%d8%49%67%6d%a0%d1%d5%5d%83%60%fb%5f%07%fe%a2[BJDCTF2020]Mark loves cat链接:http://hammerking.top/index.php/archives/4/[GWCTF 2019]我有一个数据库1.没有思路,搜索得知是(CVE-2018-12613)后台任意文件包含漏洞,payload:target=db_datadict.php%253f/../../../../../../../../etc/passwd,在本题中是flag的位置,于是修改payload为:target=db_datadict.php%253f/../../../../../../../../flag 引用:https://www.jianshu.com/p/fb9c2ae16d09
2020年10月21日
151 阅读
0 评论
3 点赞
2020-10-21
[BJDCTF2020]Mark loves cat
1.拿到题目,没有思路,于是拿dirsearch扫描目录,发现有.git目录,于是使用GitHack拿到网站源码2.关键代码:`<?php include 'flag.php'; $yds = "dog"; $is = "cat"; $handsome = 'yds'; foreach($_POST as $x => $y){ $$x = $y; } foreach($_GET as $x => $y){ $$x = $$y; } foreach($_GET as $x => $y){ if($_GET['flag'] === $x && $x !== 'flag'){ exit($handsome); } } if(!isset($_GET['flag']) && !isset($_POST['flag'])){ exit($yds); } if($_POST['flag'] === 'flag' || $_GET['flag'] === 'flag'){ exit($is); } echo "the flag is: ".$flag;` 3.分析代码,包含flag.php,看到$$x=$$y可知是变量覆盖漏洞,然后需要了解下有关于$$的变量覆盖漏洞。 $$是可变变量,一个可变变量获取了一个普通变量的值作为这个可变变量的变量名。$$导致的变量覆盖问题在CTF代码审计题目中经常在foreach中出现,如以下的示例代码,使用foreach来遍历数组中的值,然后再将获取到的数组键名作为变量,数组中的键值作为变量的值,因此就产生了变量覆盖漏洞。就这道题来说 foreach($_POST as $x => $y){ $$x = $y; } 传入POST参数:$flag=flag,这里就相当于已经将原句变为$$flag=flag,然后再看第二步的foreach()函数 foreach($_GET as $x => $y){ $$x = $$y; } 此时传入GET参数?yds=flag,意思就是$yds=$flag,而$flag就是真正的flag。然后看第三个foreach()函数 foreach($_GET as $x => $y){ if($_GET['flag'] === $x && $x !== 'flag'){ exit($handsome); } } 这里就是两个判断,第一个为$flag是否等于$x,第二个为$x是否不等于flag,如果正确返回$handsome,所以构造payload:GET:?yds=flag POST:$flag=flag 然后在源码中拿到flag。引用:https://www.mi1k7ea.com/2019/06/20/PHP%E5%8F%98%E9%87%8F%E8%A6%86%E7%9B%96%E6%BC%8F%E6%B4%9E/https://www.jianshu.com/p/a4d782e91852
2020年10月21日
150 阅读
0 评论
2 点赞
2020-10-13
buuctf刷题(1)
9.28[GXYCTF2019]Ping Ping Ping:1.过滤空格:$IFS$1或者${IFS}$ 2.使用base64编码绕过对flag的过滤,后面用base64编码后的加上|base64 -d|bash进行绕过,最终payload:echo$IFS$1Y2F0IGZsYWcucGhw|base64$IFS$1-d|sh[极客大挑战 2019]Http:1.扫!!! 2.burp用法
2020年10月13日
179 阅读
0 评论
2 点赞
1
...
4
5