CTF训练日记
文章平均质量分 84
Z3eyOnd
web安全小白
展开
-
2022鹏城杯
2022鹏城杯原创 2022-08-30 14:44:20 · 2468 阅读 · 2 评论 -
网鼎杯初赛--web1
2022网鼎杯初赛web原创 2022-08-29 19:58:44 · 719 阅读 · 0 评论 -
2022NISACTF
NISACTF原创 2022-07-13 16:33:18 · 1637 阅读 · 0 评论 -
2021GKCTF-hackme
GKCTF-hackme原创 2022-07-13 10:49:03 · 748 阅读 · 0 评论 -
2021GFCTF
GFCTF2021原创 2022-07-07 14:02:01 · 1658 阅读 · 0 评论 -
CTFshow--常用姿势
常用姿势原创 2022-07-06 16:49:06 · 1903 阅读 · 1 评论 -
2021-天翼杯
文章目录esay_eval考点反序列化Redis加载恶意so获取shell参考链接EzTP考点:wpeasy_pg考点:wpesay_eval考点绕过wakeup和正则新的一种利用so文件攻击redis的方式反序列化代码<?phpclass A{ public $code = ""; function __call($method,$args){//当调用不可访问或者不存在的方法时调用 eval($this->code); }原创 2022-05-25 12:25:10 · 566 阅读 · 0 评论 -
2022SCUCTF
前言这次出了两个题,但是只放了一个easy_web这个题。镜像我都上传到我的dockerhub里了,自己需要的可以拉取。z3eyond的dockerhubeasy_webF12,想到了robots.txt,下载源码下载后开始审计代码,这儿我就不把源码复制过来了。根据源码的User.class.php,直接admin,password登录进去构造pop链看到php文件中有很多魔法函数,就需要构造一个pop链子链子从头到尾找,头部在User类的__desctruct中,然后尾部是在Files类原创 2022-05-22 17:58:51 · 695 阅读 · 0 评论 -
2022-startCTF
前言这次的题,第二个题前面的sql注入的方法,值得学习。第三道和第四道题的思路是真的好,学会了很多东西。oh-my-grafanaGrafana是一款用Go语言开发的开源数据可视化工具,可以做数据监控和数据统计,带有告警功能。目前使用grafana的公司有很多,如paypal、ebay、intel等。这个题就是对CVE-2021-43798 Grafana任意文件读取的复现比赛才结束一天,这个题的环境就关了,找了NSSCTF平台的环境复现一下知识点/public/plugins/aler原创 2022-05-04 17:40:01 · 1839 阅读 · 0 评论 -
webshell免杀的总结
文章目录前言php的一句话木马ASP的一句话木马JSP的一句话木马前言这里对一句话木马进行一个总结,方便自己以后查询php的一句话木马直接上文章吧,懒得自己写了基本的变形https://xz.aliyun.com/t/6957#toc-0针对php5的马,利用函数跟一些姿势的变形https://www.sqlsec.com/2020/07/shell.html#toc-heading-2https://xz.aliyun.com/t/2335算是进阶的webshell免杀的内容http原创 2022-04-24 19:45:56 · 2450 阅读 · 0 评论 -
再探LFI的新姿势
前言以前的LFI,就是利用一些基本的php伪协议或者日志文件包含来getshell,这儿总结一下一些进阶的一些LFIPHPSESSION文件包含原理:配置session.upload_progress.enabled = on表示upload_progress功能开始,也意味着当浏览器向服务器上传一个文件时,php将会把此次文件上传的详细信息(如上传时间、上传进度等)存储在session当中我们通过PHP_SESSION_UPLOAD_PROGRESS将恶意语句写入session的文件,得知se原创 2022-04-28 21:12:55 · 1357 阅读 · 0 评论 -
2021年--湖湘杯--final
21年湖湘杯比赛原创 2022-04-28 21:13:12 · 1400 阅读 · 0 评论 -
2021-AFCTF
AFCTFsearch考点就是一个对find的命令了解,参数exec可以实现命令wppayload/search.php?search=flag -exec cat {} \;google authenticator考点sql注入,拿到secret的密钥google身份验证码的实现蚁剑连接,无权限,进行信息收集蚁剑反弹shell到vps非交互式shell变为交互式shell的两种方式写定时任务redis提权wp看到登录界面,扫一波,没有东西尝试进行sql注入先来个万原创 2022-04-17 23:23:34 · 3025 阅读 · 0 评论 -
2021年鹤城杯
[鹤城杯 2021]EasyP考点php特性wp代码<?phpinclude 'utils.php';if (isset($_POST['guess'])) { $guess = (string) $_POST['guess']; if ($guess === $secret) { $message = 'Congratulations! The flag is: ' . $flag; } else { $message = 'W原创 2022-04-17 21:23:21 · 2539 阅读 · 0 评论 -
2021SCTF
前言复现环境:NSSCTFLoginme考点GO的模板注入wpmiddleware.gopackage middlewareimport ( "github.com/gin-gonic/gin")func LocalRequired() gin.HandlerFunc { return func(c *gin.Context) { if c.GetHeader("x-forwarded-for") != "" || c.GetHeader("x-client-ip") !=原创 2022-03-31 14:48:19 · 919 阅读 · 0 评论 -
绕过disable_function总结
前言有些时候,phpinfo()有disable_functions蚁剑终端命令不起作用,就可能是df的问题黑名单绕过就是一些运维人员php命令执行的函数没禁用完exec,passthru,shell_exec,eval,system,popen,proc_open(),pcntl_exec前几种都比较简单popen打开进程文件指针<?php$command=$_POST['cmd'];$handle = popen($command,"r");while(!feof($原创 2022-03-27 21:35:17 · 4834 阅读 · 0 评论 -
TQLCTF两道题-向html插入webshell和DNS缓存污染
文章目录Simple PHP考点wpNetworkTools--学习DNS缓存攻击DNS解析链DNS缓存攻击及利用方式考点wpSimple PHP考点任意文件读取,获取源代码读取源代码后,向html文档里插入webshell无字母构造webshellwp开始想着在登录注册界面去SQL注入,但是本题的目的不是为了拿数据库我们自己注册登录进去后点好康的,抓包,发现有个任意文件读取漏洞读取get_pic.php<?phperror_reporting(0);$image =原创 2022-03-25 16:47:53 · 4010 阅读 · 0 评论 -
2020-BJDCTF
文章目录Mark loves cat考点wp方法1方法2Cookie is so stable考点:Twig模板注入wpThe mystery of ip考点:wpsmarty的模板学习对模板注入的判别EasySearch考点EzPHP考点wp1.主页2. 绕过$_SERVER['QUERY_STRING']3.绕过preg_match常见绕过preg_match的方法4.绕过$_REQUEST的字母匹配$_REQUEST的一些小特性$_REQUEST使用不当绕过WAF漏洞代码$_REQUEST导致的HPP原创 2022-03-08 23:45:34 · 2166 阅读 · 0 评论 -
FPM和FTP的安全学习
文章目录前言前置知识什么是CGI?什么是FastCGI?web服务器,web中间件和web容器的区别浏览器处理网页的过程1.浏览器访问静态网页过程:2.浏览器访问动态页面总结FastCGI协议的分析PHP-FPMFPM任意代码执行FPM未授权访问SSRF直接对FPM/FastCGI的攻击方法一:方法二:FTP的被动模式打FPM/FastCGIFTP的前置知识FTP 协议FTP 协议的工作方式原理:演示过程FTP打FPM情况1情况2FTP打内网redisFTP打Mysql加载恶意 .so 实现 RCE 绕过原创 2022-02-27 18:32:14 · 2992 阅读 · 1 评论 -
两道CTF题--FTP被动模式打php-fpm
文章目录[陇原战疫2021网络安全大赛]eaaasyphp考点思路总结解题先看phpinfo():我们先尝试写入shellFTP的被动模式打FastCGI蓝帽杯2021 One Pointer PHP考点php数组溢出命令执行拿webshell方法1:绕过open_basedir利用未授权打FPM RCE加载恶意so文件开启FTP服务器上传文件处理伪造恶意FastCGI请求流程SUID提权总结方法2:步骤:原理:[陇原战疫2021网络安全大赛]eaaasyphp考点反序列化–pop链的构成F原创 2022-02-25 17:24:55 · 1849 阅读 · 0 评论 -
Nodejs的安全学习
文章目录Nodejs的文档弱类型大小写比较js大小写绕过ctfshow web334ES6模板字符串命令执行ctfshow web335ctfshow web336数组绕过ctfshow web337原型链污染概念介绍ctfshow web338VM沙盒逃逸知识点CTF题目参考文献Nodejs的文档http://nodejs.cn/learn弱类型大小写比较跟php比较相似console.log(1=='1'); //trueconsole.log(1>'2'); //falseco原创 2022-02-21 21:16:06 · 2242 阅读 · 0 评论 -
phar反序列化+两道CTF例题
Phar反序列化phar文件本质上是一种压缩文件,会以序列化的形式存储用户自定义的meta-data。当受影响的文件操作函数调用phar文件时,会自动反序列化meta-data内的内容。(漏洞利用点)什么是phar文件在软件中,PHAR(PHP归档)文件是一种打包格式,通过将许多PHP代码文件和其他资源(例如图像,样式表等)捆绑到一个归档文件中来实现应用程序和库的分发php通过用户定义和内置的“流包装器”实现复杂的文件处理功能。内置包装器可用于文件系统函数,如(fopen(),copy(),file原创 2022-02-14 19:43:41 · 7210 阅读 · 0 评论 -
php-session文件包含和反序列化(对session.upload_progress的利用)
文章目录前言session的简介PHP中session的存储方式php.ini中的一些配置php中的session.upload_progress文件包含反序列化$_SESSION变量直接可控$_SESSION变量不可控参考链接前言本文是利用PHP_SESSION_UPLOAD_PROGRESS进行文件包含和反序列化的总结。也就是关于php-session的文件包含和反序列化session的简介session被称为“会话控制”,Session 对象存储特定用户会话所需的属性及配置信息。这样,当用原创 2022-02-11 21:27:25 · 1723 阅读 · 0 评论 -
BUU-bestphp‘revenge
文章目录前言WPcall_user_func函数php中session反序列化机制构造SSRF之SoapClient类CRLF Injection漏洞解题步骤总结前言这个题主要综合了很多知识点,特别综合考点:session反序列化原生类SoapClient的SSRF变量覆盖CRLFWP首页代码<?phphighlight_file(__FILE__);$b = 'implode';call_user_func($_GET['f'], $_POST);session_st原创 2022-02-11 20:19:17 · 853 阅读 · 0 评论 -
CTFshow---新春欢乐赛
新春欢乐赛热身web1web2web3web4web5web6web7热身直接执行phpinfo(),有回显开始准备找flag,但是没找到看到了auto_prepend_file,有文件目录直接读取f=system(“nl /etc/ssh/secret/youneverknow/secret.php”);web1<?php/*# -*- coding: utf-8 -*-# @Author: h1xa# @Date: 2022-01-16 15:42:02# @Last原创 2022-02-11 16:17:08 · 1262 阅读 · 0 评论 -
CTFshow新春欢乐赛--web6--反序列化字符串逃逸
web6考点:反序列化数组+字符串逃逸这道题还是挺有意思的,首先看代码 <?phperror_reporting(0);highlight_file(__FILE__);$function = $_GET['POST'];function filter($img){ $filter_arr = array('ctfshow','daniu','happyhuyear'); $filter = '/'.implode('|',$filter_arr).'/i';原创 2022-02-09 23:20:52 · 1883 阅读 · 0 评论 -
2019年-SUCTF
文章目录checkinwpEasySQL非预期解预期解Easyweb考点wpPythonginxnginx重要文件位置wp方法1--非预期解方法2方法3checkin考点:利用.user.ini来上传文件wp首先这个题就是用.user.ini或者.htaccess来绕过我们传png文件,看到exif_imagetype:not image!exif_imagetype,就是用来检查图像类型的必须要gif文件,但是我们在文件内容上加个魔法头GIF89a,就可以绕过我们用后缀为.user.in原创 2021-12-30 18:00:40 · 3392 阅读 · 0 评论 -
php原生类的总结
文章目录前言利用Error/Exception 内置类进行 XSSError内置类Exception内置类[BJDCTF 2nd]xss之光使用 Error/Exception 内置类绕过哈希比较Error类Exception 类[2020 极客大挑战]GreatphpSoapClient类来进行SSRF前言之所以这个总结,极客大挑战的SoEzunser考到了php原生类来遍历目录其实,在CTF题目中,可以利用php原生类来进行XSS,反序列化,SSRF,XXE和读文件的思路通过遍历看一下php的内原创 2021-12-12 11:07:44 · 5858 阅读 · 0 评论 -
SSRF---gopher和dict打redis
前言之前关于SSRF打redis(redis的未授权漏洞)都没咋总结,现在总结一下。redis简介redis是一个key-value存储系统,是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。原创 2021-12-01 23:54:13 · 5539 阅读 · 2 评论 -
2021极客大挑战
极客大挑战2021Welcome2021考点:http头请求方法F12,提示请使用WELCOME请求方法来请求此网页burp抓包,修改请求方法,发现f1111aaaggg9.php再次请求得到flagDarkTor浏览器(洋葱浏览器)直接访问访问即可。但前提自己需要去配好Tor浏览器。babysql考点:没有任何过滤的union注入前面还是先查是整数注入还是字符注入查列数uname=1' order by 4#查库:babysqluname=-1' union select原创 2021-12-01 20:39:25 · 2977 阅读 · 1 评论 -
SSRF--gopher协议打FastCGI
FastCGI定义:什么是CGICGI全称"通用网关接口"(Common Gateway Interface),用于HTTP服务器与其它机器上的程序服务通信交流的一种工具,CGI程序须运行在网络服务器上。传统CGI接口方式的主要缺点是性能较差,因为每次HTTP服务器遇到动态程序时都需要重启解析器来执行解析,然后结果被返回给HTTP服务器。这在处理高并发访问几乎是不可用的,因此就诞生了FastCGI。另外传统的CGI接口方式安全性也很差。什么是FastCGIFastCGI是一个可伸缩地、高速地原创 2021-11-30 21:16:08 · 6203 阅读 · 0 评论 -
SSTI-flask
文章目录前言flask基础SSTI简介魔术方法命令执行文件读取通用命令执行过滤bypass参考文献前言从极客大挑战中一道题,虽然挺简单的,但是自己发现在模板注入中有很多不懂的东西。flask基础先理解flask的流程明白from flask import flask @app.route('/index/')def hello_word(): return 'hello word'其中@app.route(’/index/’),是将函数跟url绑定起来,当你访问http://xxx原创 2021-11-27 15:59:49 · 563 阅读 · 0 评论 -
Linux的/proc/self学习
前言本文就之前看到的linux的/prof/self进行学习,并写关于这个知识点的wp。Linux的/proc/self/学习可以通过/proc/pid/来获取指定进程的信息,例如内存映射、CPU绑定信息等等。如果某个进程想要获取本进程的系统信息,就可以通过进程的pid来访问/proc/pid/来获取指定进程的信息,例如内存映射、CPU绑定信息等等。如果某个进程想要获取本进程的系统信息,就可以通过进程的pid来访问/proc/pid/来获取指定进程的信息,例如内存映射、CPU绑定信息等等。如果某个进程原创 2021-11-15 17:21:51 · 2878 阅读 · 0 评论 -
[网鼎杯 2020 白虎组]PicDown --proc文件的利用--python反弹shell
文章目录前言wp参考前言这个题跟到wp做的,确实思路很像一个渗透过程了,值得好好学习。wp首先打开环境,F12,dirsearch和御剑都没有扫描出什么东西。然后输入一个输入框,填入抓包有个url的GET参数,我们尝试SSRFurl=file://127.0.0.1/flag.php或者php伪协议,都没有什么反应。然后尝试目录穿越?url=../../etc/passwd说明存在文件包含,目录穿越可以实现我们知道/proc文件系统,所以我们使用目录穿越爆出文件目录?url=../原创 2021-11-15 17:07:38 · 979 阅读 · 0 评论 -
BUU-0CTFpiapiapia(反序列化字符串逃逸)
前言考点是反序列化字符串逃逸wp首先这个题,一进来就是一个登录平台,就属于一种基本的web网站的搭建,先登录再去后台,一般来说,可以sql注入之类的,但是我们习惯先看F12的源码,然后用御剑和dirsearch工具去扫描后台或者文件的泄露。发现存在备份文件泄露,www.zip,得到源码开始代码审计config.php中发现了flag变量,看来题目目的是让我们读取config.php了。我们来看下每个页面:index.php<?php require_once('class.php'原创 2021-11-14 20:54:51 · 2954 阅读 · 0 评论 -
BUU-HCTF
文章目录HCTF-热身解题知识点HCTF-热身解题1.首先,F12看网页2.进/source.php,看到php代码 <?php highlight_file(__FILE__); class emmm { public static function checkFile(&$page) { $whitelist = ["source"=>"source.php","hint"=>"hint原创 2021-11-14 17:00:32 · 241 阅读 · 0 评论 -
php反序列化(ctfshow)
文章目录简介入门反序列化中常见的魔法函数web254web255web256web257为什么需要用urlencode?web258web259介绍web260web261web262web264web263web265web266补充知识点php中输出打印的方式简介php序列化和反序列用到两个函数序列化:serialize,将对象格式化为一个新的字符串反序列化:unserialize,将字符串还原为原来的对象。一般在CTF中,可以通过自己写php代码,并传序列化后的代码,可以覆盖原来的代码,从而原创 2021-11-14 16:26:21 · 1435 阅读 · 0 评论 -
命令执行(ctfshow)
文章目录介绍PHP命令执行的参数${php代码}assertpreg_replace命令执行的几种常用的符号命令执行的基本绕过介绍命令执行:一句话就是没有对用户的提交的数据进行过滤,导致通过一些系统命令获取了一些信息。PHP命令执行的参数 1.system:执行系统命令,会输出 例子:http://www.dvwa.com/cmd/test.php?cmd=||%20ipconfig 2.exec:exec函数不会将执行后的结果输出,与system功能一样 3.passthru:用原创 2021-11-12 23:21:41 · 3321 阅读 · 0 评论 -
文件包含漏洞+php伪协议
文章目录常见的文件包含函数基本绕过:利用php伪协议1.php://input2.php://filter3.data协议4.zip协议5.bzip2://协议6.zlib://协议7. phar://协议8..file协议日志包含介绍利用条件漏洞利用流程日志文件路径远程文件包含条件流程PHPSESSION包含包含/proc/self/environ文件包含临时文件过程包含上传文件绕过类型指定后缀绕过利用长度截断%00截断url指定前缀截断目录遍历编码参考文献常见的文件包含函数php文件包含函数有下面四原创 2021-11-11 21:46:24 · 6974 阅读 · 3 评论 -
CTF训练之路2--ctfshow内部赛
文章目录签到登录就有flag出题人不想跟你说话.jpg蓝廋一览无余签退签到一进去就是login界面,F12看到有个register.php,说明就是一个二次注入的sql注入题。所谓二次注入,就是再register中构造sql语句,然后登录login来触发。找到羽师傅的脚本import requestsimport reurl_register = "http://7b093e85-e6d5-4784-adab-49ba20992eda.challenge.ctf.show/register.原创 2021-11-07 22:27:43 · 6929 阅读 · 1 评论