刘功瑞的博客

有一天你突然惊醒,发现这一切,都只不过是一场梦。

2020 第五空间智能安全大赛 Web hate-php Writeup

<?php error_reporting(0); if(!isset($_GET['code'])){     highlight_file(__FILE__); }else{     $code = $_GET['code'];     if (preg_match('/(f|l|a|g

攻防世界 XCTF Web email Writeup(flask,python字符串格式化漏洞)

只有注册和登录,根据题目提示发现注册的email字段有盲注漏洞,跑出admin密码为h4ck4fun登录admin,发现多了个修改邮箱功能根据提示 secret in /flag ,访问http://220.249.52.133:34412/flag根据提示猜测应该需要获取secret_key重新加密cookie,增加isadmin字段,才能得到flag。修改邮箱的接口处传入 mail={user.__class__.__init__.__globals__[current_app].

攻防世界 XCTF Web Background_Management_System Writeup

扫描发现有源码泄露www.zip,下载源码后审计发现修改密码处有漏洞,注册一个账号admin'#  ,修改该账号的密码,通过sql注入可以修改admin的密码,登录admin账号后发现访问提示源码中有shell.php文件需要我们用ssrf来调用shell.php,测试发现只有gopher协议可以用,百度gopher发送http请求二次编码最终payloadhttp://220.249.52.133:59889/xinan/public/55ceedfbc97b0a8

攻防世界 XCTF Web smarty Writeup(bypass_disablefunc,move_uploaded_file,smarty)

根据题目提示猜测是smarty模板注入漏洞测试如下 X-Forwarded-For:{9*9}测试发现system命令不能执行,eval不能执行,file_get_contents不能通外网,所以想上传shell就写了一个上传的php文件X-Forwarded-For:{file_put_contents('./up.php','<?php move_uploaded_file($_FILES["file"]["tm

攻防世界 XCTF Web love_math Writeup

<?php error_reporting(0); //听说你很喜欢数学,不知道你是否爱它胜过爱flag if(!isset($_GET['c'])){     show_source(__FILE__); }else{     //例子 c=20-1     $content = $_GET['c

ssrf redis 远程命令执行 rce

网鼎杯玄武组题目,ssrf代码<?php function check_inner_ip($url) {     $match_result=preg_match('/^(http|https|gopher|dict)?:\/\/.*(\/)?.*$/',$url);     if (!$match_result)     {

2020网鼎杯 第三组 Web Think_java WriteUp(java反序列化,sql盲注,swagger)

打开页面是这样的通过给的附件进行代码审计,发现有sql注入漏洞注入点为dbName参数,首先需要解决的问题是如何绕过 "jdbc:mysql://mysqldbserver:3306/" + dbName;找到jdbc的连接字符串参数文档,发现dbName后面加上?后面可以加任意参数,就不会影响正常的数据库连接也就是说dbName可以等于myapp?a=1.....  ,a=1 后面可以写单引号来注入了,经过测试找到注入点myapp?a=1'&nb

2020年新春战“疫”—网络安全公益赛 Web 盲注 Writeup(sql注入,REGEXP注入,greatest注入)

<?php     # flag在fl4g里     include 'waf.php';     header("Content-type: text/html; charset=utf-8");      $db = 

2020年新春战“疫”—网络安全公益赛 Web ezExpress Writeup(特殊字符绕过toUpperCase,node.js原型污染漏洞,命令执行RCE)

注册个账号,并且发现源码泄露要求必须使用ADMIN登录var express = require('express'); var router = express.Router(); const isObject = obj => obj && obj.constructor && obj.

2020年新春战“疫”—网络安全公益赛 Web easy_thinking Writeup(thinkphp6,php7 bypass_disablefunction)

先注册个用户然后登录,提示说漏洞在search位置用bp拦截搜索请求根据thinkphp6的漏洞,上传一个马连接木马,发现禁用了system函数,flag在根目录下,必须执行/readflag才能读取到,所以我们使用php7的绕过脚本进行读取<?php pwn("cd / &&./readflag"); function pwn($cmd) {     global&n

Powered By Z-BlogPHP 1.5.2 Zero

Copyright www.liugongrui.com.All Rights Reserved.