
ctf学习
文章平均质量分 62
2020年7月底开始接触ctf,记录下所学所感所悟
_小飒
荒废了
展开
-
【ctf学习】RSA共模攻击
e1和e2互质的情况下,由拓展欧几里得定理。已知n,c1,e1,c2,e2。根据这个原理来写解密脚本。原创 2022-09-16 00:15:08 · 875 阅读 · 2 评论 -
[wp][GWCTF 2019]枯燥的抽奖
感觉网上的wp互相抄的写得不明不白,只简单说下我对这题的理解,如有错误地方望各位师傅指正我这题获得的部分字符串是UVCRacsLrR种子固定的情况下,mt_srand($_SESSION[‘seed’]);每次产生的随机数的顺序也是固定的需要用到php_mt_seed工具下载地址https这个工具是用C语言编写的工具,里面的一个库是Windows下没有的,推荐用Linux直接用。拖入kali后解压安装。...原创 2022-07-17 16:51:46 · 624 阅读 · 0 评论 -
buuctf刷题
重温一下buuctf前面的题目hint: flag in ffffllllaaaaggggmb_substr() 函数返回字符串的一部分mb_strpos():返回要查找的字符串在别一个字符串中首次出现的位置checkFile函数的作用:判断page是否被设置,是否为字符串判断page是否在whitelist中以?为分割符取出之前的字符,保存在page判断_page判断page判断_page是否在whitelist中url解码后以?为分割符取出之前字符,判断是否在whitelist中?fil原创 2022-07-11 20:56:39 · 345 阅读 · 0 评论 -
[wp][安洵杯 2019]easy_serialize_php
[安洵杯 2019]easy_serialize_phpf=phpinfo 得到d0g3_f1ag.phpZDBnM19mMWFnLnBocA==在get ?f=show_image下随便赋值 echo一下序列化需要吞掉这一段我一开始构造_SESSION[1] =flagflagflagflagflagphp&_SESSION[function]=";s:3:“img”;s:20:“ZDBnM19mMWFnLnBocA==”;}发现不行,对比网上别人的payload发现必须function这原创 2022-07-05 14:27:56 · 166 阅读 · 0 评论 -
[ctf学习]ctfhub技能树-web
背景知识HTTP 请求方法, HTTP/1.1协议中共定义了八种方法(也叫动作)来以不同方式操作指定的资源。方法1、OPTIONS返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性2、HEAD向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。3、GET向特定的资源发出请求。注意:GET方法不应当被用于产生“副作用”的操作中,例如在Web A原创 2022-07-05 10:17:41 · 2122 阅读 · 0 评论 -
[ctf学习]ssrf-gopher
?url=127.0.0.1/flag.php看到这里不考虑使用file直接读取 f.php内容,尝试一下如何使用gopher 进行get传值burp拦截 取前两句ssrf_post还是上面情况,如果是postContent-Length: 7是post传参的长度原创 2022-07-05 06:34:12 · 861 阅读 · 0 评论 -
[wp]bmzclub几道题的writeup
边刷题,边写wpflag{Fourbase123}-… .---- -… -… -… …-- --… …- -… -… --… -… …-- .---- --… …-- …— --… --… …- … …-. --… …-- …-- ----- … …-. …-- …-- …-- …- …-- … --… ----. --… -…61666374667B317327745F73305F333435797Dafctf{1s’t_s0_345y}https://atool.vip/corevalue/H原创 2022-07-03 21:51:42 · 784 阅读 · 0 评论 -
解决Unable to create process using ‘D:\Program File
解决方法:在pip命令前加上Python -m例如:python -m pip install pymongo原创 2022-06-23 13:12:40 · 975 阅读 · 0 评论 -
[强网杯 2019]随便注
进去发现是字符 用‘ ’可以闭合 或者‘ %23堆叠注入words列:1919810931114514列:发现 1919810931114514 有flag字样更改两个表名试试这里学到一个新知识点,表名为数字时,要用反引号包起来查询。不行报错error 1054 : Unknown column ‘id’ in ‘where clause’只能重启容器需要把flag列名改成idALTER TABLE CHANGE flag id varchar(150);再用上面的换表名输入1’ or原创 2022-06-14 20:58:55 · 119 阅读 · 0 评论 -
VMware下安装安装kali
安装新kali顺便记录下过程官方 下载地址:https://www.kali.org/get-kali/#kali-virtual-machines下载后解压拖进虚拟机,使用账号/密码 kali/kali 进入设置root密码test> sudo passwd root[sudo] test 的密码:#输入登录用户test密码新的 密码: #为root设置新的密码,输入的密码不显示重新输入新的 密码: #确认密码,输入的密码不显示passwd:已成功更新密码 #密码设置成功然后,重新启动原创 2022-06-13 19:39:59 · 565 阅读 · 0 评论 -
sql跨库注入
靶场:https://buuoj.cn/challenges 的sqli-labsL1:首先看有什么数据库完整url:选择“ctftraining”数据库选择名为flag的table查询内容采用报错注入步骤是类似的,最后flag显示不全原创 2022-06-07 16:38:54 · 324 阅读 · 0 评论 -
owasp -bwapp -ssrf练习
下载owasp虚拟机文件,打开后。用主机访问ip即可进入bwapp默认账号密码是bee/bug,靶机地址为http://192.168.111.129http://192.168.111.129/bWAPP/ssrf.phpssrf有三个任务任务1:使用远程文件包含进行端口扫描点击第一个测试得到http://192.168.111.129/evil/ssrf-1.txt 是个端口扫描的脚本找到<?phpecho "<script>alert(\"U 4r3 0wn3d原创 2020-10-02 22:37:02 · 779 阅读 · 1 评论 -
HTTP协议的六种请求方法
原文:https://www.cnblogs.com/phpper/p/9127553.html早上看到一篇不错的http的文章,分享下抛砖引玉,聊下概念性的东西先:HTTP协议 (Hyper Text Transfer Protocol)HTTP是一个基于TCP/IP通信协议来传递数据,包括html文件、图像、结果等,即是一个客户端和服务器端请求和应答的标准。HTTP协议特点1.http无连接:限制每次连接只处理一个请求,服务端完成客户端的请求后,即断开连接。(传输速度快,减少不必要的连接,但转载 2020-09-12 08:10:38 · 3051 阅读 · 0 评论 -
php基础,弱类型和变量覆盖
Php基础Php基本语法:https://www.w3school.com.cn/php/php_syntax.aspphp要求1、文件后缀必须为php2、文件开头必须是 <?php 文件结束:?>3、变量的声明必须添加 $4、每一行代码后都要添加;来结束。变量的要求1、变量以 $ 符号开始,后面跟着变量的名称2、变量名必须以字母或者下划线字符开始3、变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )4、变量名不能包含空格5、变量名是区分大小写的($y原创 2020-09-05 05:11:56 · 761 阅读 · 0 评论 -
Upload-Labs第Pass-16通关(二次渲染绕过) 详解
看到一篇不错的文章分享下原文:https://www.fujieace.com/penetration-test/upload-labs-pass-16.htmlUpload-Labs第Pass-16通关(二次渲染绕过) 详解由于Pass-16通关有点复杂,我就特意单独把这关拿出来详解一下!不过我在看了Pass-16的源码后,发现了一些有意思的东西。else if((KaTeX parse error: Expected 'EOF', got '&' at position 19: …ee转载 2020-09-01 04:44:05 · 1351 阅读 · 0 评论 -
[ctf零基础入门]sql注入
本文非常简单,适合完全0基础入门学习需要知道mysql增删改查的最基础用法(前面博文的mysql部分)[ctf零基础入门]web基础可以使用里面的网页进行测试,也可以安装使用sqli-labs常用函数查看用户名:查询信息(以下依次为查看版本,当前使用数据库,数据库路径,数据库安装路径)查询操作系统上节提到的user表里的内容太多了,截图太麻烦,新建一个info表测试。连接字符concatlimit用法:联合查询注入select group_concat(table_nam原创 2020-08-30 09:21:22 · 1017 阅读 · 1 评论 -
[ctf零基础入门]php基础
本文难度简单,适合0基础工具:hackbar或burp ,PHPstudyPhp基本语法:https://www.w3school.com.cn/php/php_syntax.asp先快速自学弱类型如果一个字符串为 “合法数字+e+合法数字”类型,将会解释为科学计数法的浮点数如果一个字符串为 “合法数字+ 不可解释为合法数字的字符串”类型,将会被转换为该合法数字的值,后面的字符串将会被丢弃如果一个字符串为“不可解释为合法数字的字符串+任意”类型,则被转换为0!1 <?php2 va原创 2020-08-28 23:03:59 · 1286 阅读 · 0 评论 -
ctf序列化
一、基础序列化和反序列化php中的两个函数序列化函数:serialize()反序列化函数:unserialize()当在php中创建了一个对象后,可以通过serialize()把这个对象转变成一个字符串,保存对象的值方便之后的传递与使用。具体使用如下:<?phpclass xu{ var $a='1';}$class1=new xu;echo serialize($class1);?>运行结果:O:2:“xu”:1:{s:1:“a”;s:1:“1”;}反序列化&原创 2020-08-19 16:33:51 · 1146 阅读 · 0 评论 -
python入门解决简单的crypto题
python 3.8+变异凯撒加密密文:afZ_r9VYfScOeO_UL^RWUc格式:flag{ }>>> num=ord('f')-ord('a')>>> num5>>> num=ord('l')-ord('f')>>> num6>>> num=ord('a')-ord('Z')>>> num7>>> a='afZ_r9VYfScOeO_UL^RWUc原创 2020-08-19 14:40:01 · 648 阅读 · 0 评论 -
sqlilab-writeup(L1-17)
Less-1常规的联合注入http://127.0.0.1/sqli-labs-master/Less-1/?id=-1' union select 1,(select group_concat(table_name) from information_schema.tables where table_schema=database()),(select group_concat(column_name) from information_schema.columns where table_sche原创 2020-08-07 13:24:17 · 269 阅读 · 0 评论 -
ctf命令执行漏洞绕过方式小结
测试环境:本地:Win10 phpstudy8.1 kali2020.2外网:单位提供的linux靶机一、命令分隔符%0a – 换行符,%0d – 回车符,; – 连续指令&& –| –|| –二、空格< <> %09 $IFS$9 ${IFS} 三、读文件(1)more:一页一页的显示档案内容(2)less:与 more 类似,但是比 more 更好的是,他可以[pg dn][pg up]翻页(3)head:查原创 2020-08-06 23:17:39 · 3893 阅读 · 1 评论 -
kali安装和linux基本操作
win10 64位机vmware 官网下载 网上寻找注册码(楼主用的vm 15)百度搜索kali第一个地址 下载kali vmware的压缩文件 (我下载的2020.2)解压后,用vmware 增加新的虚拟机(也可下载iso文件,手动安装和配置,但是比较费时)不管那种安装方式,2020年后的kali第一次进去不是root账号。我使用的压缩文件安装,登录账号和密码都是kaliVmware15 +kali 2020.2Vmware 快照功能,可以新建返回,管理快照Pwd( Print wo原创 2020-07-28 05:56:46 · 446 阅读 · 0 评论