首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
file_get_contents 拼接绕过
2024-11-02
php file_get_contents 绕过
http://www.shiyanbar.com/ctf/1837 想到了经常出现的残留文件问题,于是尝试了一下:index.php~,index.php.bak, $flag='xxx';extract($_GET); if(isset($shiyan)){ $content=trim(file_get_contents($flag)); if($shiyan==$content) { echo'ctf{xxx}'; } else{ echo'Oh.no';} } file_get_conte
web渗透绕过
////目录: 403 IP地址绕过与文件名绕过 登录框绕过 SQL注入绕过 文件上传绕过 RCE绕过 403 IP地址绕过与文件名绕过 X-Forwarded-For:127.0.0.1 X-Forwarded:127.0.0.1 Forwarded-For:127.0.0.1 Forwarded:127.0.0.1 X-Forwarded-Host:127.0.0.1 X-remote-IP:127.0.0.1 X-remote-addr:127.0.0.1 True-Client-IP:1
3. 文件上传靶机实战(附靶机跟writeup)
upload-labs 一个帮你总结所有类型的上传漏洞的靶场 文件上传靶机下载地址:https://github.com/c0ny1/upload-labs 运行环境 操作系统:推荐windows(除了Pass-19必须在linux下,其余Pass都可以在windows上运行) php版本:推荐5.2.17(其他版本可能会导致部分Pass无法突破) php组件:php_gd2,php_exif(部分Pass需要开启这两个组件) apache:以moudel方式连接 PS:为了节省时间,可下载
BUUCTF知识记录
[强网杯 2019]随便注 先尝试普通的注入 发现注入成功了,接下来走流程的时候碰到了问题 发现过滤了select和where这个两个最重要的查询语句,不过其他的过滤很奇怪,为什么要过滤update,delete,insert这些sql语句呢? 原来这题需要用到堆叠注入: 在SQL中,分号(;)是用来表示一条sql语句的结束.试想一下我们在 ; 结束一个sql语句后继续构造下一条语句,会不会一起执行?因此这个想法也就造就了堆叠注入,而堆叠注入可以执行任意sql语句 这下就好理解了,过滤上面那些语
[第二届全国中学生网络安全竞赛]bypass
前几天拿到了线下赛的源码,做做看.这道主要是命令执行的黑名单绕过 先看看给出的代码: <?php highlight_file(__FILE__); error_reporting(0); $blacklist = ["system", "ini_set", "exec", "scandir", "shell_exec", "proc_open", "error_log&
PHP_Code_Challenge 1~30
1. 1wMDEyY2U2YTY0M2NgMTEyZDQyMjAzNWczYjZgMWI4NTt3YWxmY= <?php error_reporting(0); require __DIR__.'/lib.php'; echo base64_encode(hex2bin(strrev(bin2hex($flag)))), '<hr>'; highlight_file(__FILE__); bin2hex:把十六进制值转换为 ASCII 字符. strrev:反转字符串. hex2bin
web-文件上传漏洞总结
思维导图: 一,js验证绕过 1.我们直接删除代码中onsubmit事件中关于文件上传时验证上传文件的相关代码即可. 或者可以不加载所有js,还可以将html源码copy一份到本地,然后对相应代码进行修改,本地提交即可. 2.burp改包,由于是js验证,我们可以先将文件重命名为js允许的后缀名,在用burp发送数据包时候改成我们想要的后缀. 二,服务端验证绕过 黑名单 1.上传特殊可解析后缀 可以使用php345,phtml,PHP,phP,等 2.上传.htaccess 我们需要上传一个
python-Flask模版注入攻击SSTI(python沙盒逃逸)
一篇以python Flask 模版渲染为例子的SSTI注入教学~ 0x01 Flask使用和渲染 这里简化了flask使用和渲染的教程 只把在安全中我们需要关注的部分写出来 来一段最简单的FLASK运行代码: 很简单的flask使用 将url的qing和方法绑定 返回"qing - Flask test"字符串 说一下模版渲染Jinja2中变量 控制结构 {% %} 变量取值 {{ }} 注释 {# #} jinja2模板中使用 {{ }} 语法表示一个变量,它是一种特殊的占位符.
CTF SSTI(服务器模板注入)
目录 基础 一些姿势 1.config 2.self 3.[].() 3.url_for, g, request, namespace, lipsum, range, session, dict, get_flashed_messages, cycler, joiner, config等 4.常用绕过 flask/jinja2 SSTI入门 SSTI注入绕过(沙盒逃逸原理一样) 探索Flask/Jinja2中的服务端模版注入(一) 探索Flask/Jinja2中的服务端模版注入(二) 从零学习f
【DVWA】Command Injection(命令注入)通关教程
日期:2019-08-01 16:05:34 更新: 作者:Bay0net 介绍:利用命令注入,来复习了一下绕过过滤的方法,还可以写一个字典来 fuzz 命令注入的点. 0x01. 漏洞介绍 仅仅需要输入数据的场合,却伴随着数据同时输入了恶意代码,而装载数据的系统对此并未设计良好的过滤过程,导致恶意代码也一并执行,最终导致信息泄露或者正常数据的破坏. 用户的一切输入都是不可信的. 0x02.Low Security Level 查看源码 <?php if( isset( $_POST[ 'Sub
GYCTF Flaskapp[SSTI模板注入 ]
题目复现传送门 学习链接: 找了个师傅的blog先学习一下基础的flask知识 https://www.freebuf.com/column/187845.html(从零学flask) 简单记录一下: flask 中渲染的方法有两种: render_template render_template_string 两者的区别: render_template()渲染指定的文件 render_template_string()渲染指定的字符串 不正确的使用render_template_string
CTFHub_技能树_远程代码执行
RCE远程代码执行 命令分割符: linux: %0a .%0d .; .& .| .&&.|| 分隔符 描述 ; 如果每个命令都被一个分号(:)所分隔,那么命令会连续地执行下去 && 前面执行成功后面才会执行 & 不执行错误检查和运行所有命令 || 前面执行失败才会执行后面 | 符号 左边输出 作为右边输入.会显示最后一个命令的执行结果 windows: %0a.&.|.%1a(一个神奇的角色,作为.bat文件中的命令分隔符) 敏感字符过滤绕过:
Jarvisoj-web Login
题目入口: http://web.jarvisoj.com:32772/ 有个登陆框,随便提交参数然后bp抓包 get到了一个Hint,给了sql查询的语句 select * from `admin` where password=' ".md5($pass,true)." ' 可以看到传上去的参数经过了md5加密后再进行查询.md5()第二个参数是输出格式.true,表示输出原始16字符二进制格式: false,则输出32字符十六进制数. 题目中是ture,也就是说加密后的md5会转
[BUUOJ记录] [强网杯 2019]随便注(三种方法)
本题主要考察堆叠注入,算是比较经典的一道题,在i春秋GYCTF中也出现了本题的升级版 猜测这里的MySQL语句结构应该是: select * from words where id='$inject'; 构造Payload:用单引号+分号闭合前面的语句,插入SQL语句,再用注释符注释掉后面的语句即可 先列出所有数据库: 1';show databases;# 得到: array(1) { [0]=> string(11) "ctftraining" } array(1) { [0
[web安全原理]PHP命令执行漏洞基础
前言 PHP命令执行漏洞 应用程序的某些功能功能需要调用可以执行系统命令的函数,如果这些函数或者函数的参数被用户控制,就有可能通过命令连接符将恶意命令拼接到正常的函数中,从而随意执行系统命令,这就是命令执行漏洞. 基本函数 1.system()用于执行外部程序,并且显示输出 <?php system('whoami'); ?> 2.exec()函数用于执行一个外部程序 <?php exec('whoami');?> 3.shell_exec()函数通过shell环境执行命令,并且将
从零开始的ssti学习(已填)
前前言: 本文只是接这个机会来梳理一下ssti的知识点.先说一下,本文目前的重点是Flask的ssti,但是之后会填其他框架的坑.(就不该叫ssti学习,ssti太广了) 涉及知识点: 模板注入 前言: 何为模板注入? 模板引擎可以让(网站)程序实现界面与数据分离,业务代码与逻辑代码的分离,这大大提升了开发效率,良好的设计也使得代码重用变得更加容易. 但是模板引擎也拓宽了我们的攻击面.注入到模板中的代码可能会引发RCE或者XSS. 如何快速判断模板框架? (开局一张图,内容全靠编(不是)) Fl
axios的使用小技巧:如何绕过字符串拼接,直接传递对象
Vue.js官方推荐使用axios作为发送http请求的工具,在使用axios中,有些小技巧是不容易发现的.当我们不知道这些技巧时,我们可能会使用其他"奇技淫巧",比如,我们很容易会忽略axios默认支持get请求传递对象的事实,然后采用手动拼接.第三方库.或手动编写函数的方式将对象转换为查询参数,拼接成最终的url地址. 事实上,axios是支持直接传递对象的,根本无需做费神的相关拼接工作,更无需引入第三方库. 给get请求直接传递对象 axios中给get请求直接传递对象的方式
绕过WAF、安全狗知识整理
0x01 前言 目前市场上的WAF主要有以下几类 1. 以安全狗为代表的基于软件WAF 2. 百度加速乐.安全宝等部署在云端的WAF 3. 硬件WAF WAF的检测主要有三个阶段,我画了一张图进行说明 本文主要总结的就是针对上面的三个阶段的绕过策略.小菜一枚,欢迎拍砖. 0x02 WAF身份认证阶段的绕过 WAF是有一个白名单的,在白名单内的客户请求将不做检测 (1)伪造搜索引擎 早些版本的安全狗是有这个漏洞的,就是把User-Agent修改为搜索引擎,便可以绕过,进行sql注入等攻击,论坛bl
Suctf知识记录&&PHP代码审计,无字母数字webshell&&open_basedir绕过&&waf+idna+pythonssrf+nginx
Checkin .user.ini构成php后门利用,设置auto_prepend_file=01.jpg,自动在文件前包含了01.jpg,利用.user.ini和图片马实现文件包含+图片马的利用. 而.htacess构造后门是通过上传.htaccess设置AddType application/x-httpd-php .jpg,将jpg文件作为php解析,getshell 补上脚本: 修改下与easyphp中的可以通用 import requests import base64 url = "
[原题复现+审计][0CTF 2016] WEB piapiapia(反序列化、数组绕过)[改变序列化长度,导致反序列化漏洞]
简介 原题复现: 考察知识点:反序列化.数组绕过 线上平台:https://buuoj.cn(北京联合大学公开的CTF平台) 榆林学院内可使用信安协会内部的CTF训练平台找到此题 漏洞学习 数组绕过 1.1 url传递数组当我们要向服务器传递数组时,我们可以通过 http://127.0.0.1/index.php?a[]=hello&a[]=world 来传递,这样,在后端, $a = $_GET['a']; 就可以接收到 $a[0]="hello", $a[1]=&q
热门专题
docker-maven-plugin 重命名
docker容器内网络ping不通
location全局变量使用
java groovy 混用
itext 垂直居中无效
vmos开机卡百分之99
重复读取HttpServletRequest
bundle文件解包
eslint 参数换行
datagridview 多行表头
oauth2密码模式
django视频流传输遇到的问题
java截取某两个相同字符串的中间部分
formatdb用安装吗
Android studio 找不到signing
python bs4 class选择
mpc模型预测控制当前热点
mysqlr默认端口号怎么看
selenium 元素突出显示
安装centos系统页面选择