- 博客(42)
- 收藏
- 关注
原创 学习记录1
基于用户的IP地址生成一个MD5哈希值,并将其附加到目录路径中,用于创建一个唯一的用户目录。还有个文件头检测,一般都用GIF89进行绕过,但是这里会出现问题,.htaccess文件会无法生效。,试图限制PHP的文件访问到父目录。这里取反无法实现,这里对长度有要求,所以自增也放弃,采用异或来进行绕过,函数的内容了,该函数主要是写入文件,但是有限制,既文件名不能包含。验证文件是否为合法的图像文件,如果不是,则终止程序并输出。的限制了,这里新建个php文件用通用的函数组合来绕过限制。
2025-01-17 02:54:09
892
原创 1月15学习
从Test类中我们可以发现,__get($key)=>get($key)=>file_get($value)这样一条利用链,$key的值,是触发__get的时候传入的,$value的值是通过params($key)得到的,所以不妨令params=array(“source”=>“f1ag.php”),然后我们传入$key=“1”,即可;这里的$key需要是source。就是相当于图片中的文件头的功能,没有它,图片无法解析,同样的,没有文件头,php识别不出来它是phar文件,也就无法起作用。
2025-01-16 04:03:18
901
原创 1月13日学习
这里的GET不是我么平常的GET方法传参,这里的GET是Lib for WWW in Perl中的命令 目的是模拟http的GET请求,GET函数底层就是调用了open处理。实现发送GET请求给当前GET参数’url‘,并将其结果保存在/sandbox/md5/filename中,其中filename为传入的Get参数。总结,该题可以使用两种解法,一个是利用原来的readflag文件读取flag,并将读取的结果输入到我们创建的文件中;
2025-01-14 02:11:45
708
原创 1月12日学习
该系统只存在内存当中,以文件系统的方式为访问系统内核数据的操作提供接口,可以通过更改其中的某些文件来改变内核运行状态。每个+号代表trie树的一个中间节点,其后的三个数字分别代表节点处理的比特位数量,节点full_children的数量,节点empty_children的数量。代码审计发现,no_one_know_the_manager页面下接收key和shell,key要求和secret_key一样。该题考查的是xxe漏洞,利用该xxe漏洞读取内网IP,然后再爆破该内网的同段内网网址,连接。
2025-01-13 03:40:15
1072
原创 1月11日
PHP的mt_rand函数作为一个随机数生成工具在程序中被广泛使用,该函数用了 Mersenne Twister 算法的特性作为随机数发生器,它产生随机数值的平均速度比 libc 提供的 rand() 快四倍。伪随机数是用确定性的算法计算出来的随机数序列,它并不真正的随机,但具有类似于随机数的统计特征,如均匀性、独立性等。在计算伪随机数时,若使用的初值(种子)不变,那么伪随机数的数序也不变。mt_rand就是一个伪随机数生成函数,它由可确定的函数,通过一个种子产生的伪随机数。但是出题人是给了源代码的。
2025-01-12 01:42:51
629
原创 【无标题】
过滤了下划线_和%5f,而且需要get传参b_u_p_t,参数需要匹配23333字符串,而且不能够和23333字符串数值不相等,类型不相同,这里就需要用到%0a。分析代码可以发现,检查是否存在参数Ping_ip.exe,如果存在就会执行system函数,那么就可以在执行ping后继续执行我们后面的命令,构造。
2025-01-10 22:08:05
1073
原创 No one knows regex better than me
然后对$second进行了正则匹配,匹配所传入的参数是否包含字符串Yeedo|wants|a|girl|friend|or|a|flag且忽略字母大小,如果匹配到了字符串就会继续执行,且$key=$second,再对$key进行了匹配,如果匹配到了..和flag就会输出Noooood hacker!这个题的大体意思就是:高亮显示通过base64解码后的$zero和$end所拼接的内容(拼接后的就是文件名),这是漏洞的成因,然后对三次正则匹配进行绕过就可以。
2025-01-10 16:33:08
587
原创 php特性刷题
上面注释的是一些配置信息然后包含flag.php页面高亮显示如果,先判断是否存在GET传参的参数num,如果弱比较等于4476,就会输出“no non no!如果包含字母那么就错误(包含大小写)判断变量$num是否等于 4476,如果是,则输出变量$flag的值;否则,输出变量$num转换为整数后的值。需要num的值等于4476,但又弱比较不可以,就是说可以转换进制,数值相同就行,因为不能用英文,所以16进制和32进制都不行,这是它的2,4,8进制101133010574。
2024-09-01 19:14:10
851
原创 chunqiude
靶标介绍:Fantastic Blog (CMS)是一个绝对出色的博客/文章网络内容管理系统。它使您可以轻松地管理您的网站或博客,它为您提供了广泛的功能来定制您的博客以满足您的需求。它具有强大的功能,您无需接触任何代码即可启动并运行您的博客。该CMS的/single.php路径下,id参数存在一个SQL注入漏洞通过描述可以得知,存在sql注入漏洞进行目录扫描可以看到有6个页面,但是测试后没有id注入点用BP扫描后发现single.php页面存在参数id,且可以查询可能存在sql注入。
2024-09-01 19:01:58
849
原创 shaushaushau1
靶标介绍:College Notes Gallery 2.0 允许通过“/notes/login.php”中的参数‘user’进行 SQL 注入。利用这个问题可能会使攻击者有机会破坏应用程序,访问或修改数据.已经告诉你在哪里存在sql注入了,一般上来应该先目录扫描再进行判断,看是否存在sql注入,这里就直接进行注入抓包保存到5.txt中。
2024-08-21 14:35:48
903
原创 shuashuashua
靶标介绍:在SourceCodester采购订单管理系统1.0中发现了一项被分类为关键的漏洞。受影响的是组件GET参数处理器的文件/admin/suppliers/view_details.php中的一个未知函数。对参数id的操纵导致了SQL注入。可以远程发起攻击。通过标靶介绍可以知道在/admin/suppliers/view_details.php页面存在参数id有sql注入漏洞,访问该页面。
2024-08-15 15:13:31
735
原创 流量分析0.o
此时正在进行的可能是__________协议的网络攻击。(如有字母请全部使用小写,填写样例:http、dns、ftp)。得到的flag请使用NSSCTF{}格式提交。
2024-08-15 11:22:59
1078
原创 cqyjldfx
靶标介绍:GDidees CMS v3.9.1及更低版本被发现存在本地文件泄露漏洞,漏洞通过位于 /_admin/imgdownload.php 的 filename 参数进行利用。攻击者可以通过向 filename恶意输入来下载服务器上的任意文件。提示有本地文件泄露,且位于 /_admin/imgdownload.php,参数是filename所以可以构造: /_admin/imgdownload.php?../可以遍历目录,最终查找flag得到的是png文件,用笔记本编辑打开就可以得到flag。
2024-08-02 14:07:38
1108
原创 爬虫day3
但是现在这个网址的话访问不了了,这个网址把数据改成客户端渲染了,在源代码是没有数据的,而且是通过post提交来改变页数,只要能够爬取一页数据,就可以多线程来爬取。线程池:一次性开辟一些线程,我们用户直接给线程池提交任务。线程任务的调度交给线程池来完成。一个线程只打印一对,加入了一个线程后打印两对,有两个线程在工作。我们可以选择多线程,多进程,协程等操作完成异步爬取。进程:资源单位,每一个进程至少有一个线程。可以看到混在一起了,完成了多线程的操作。2 .上线程池,多个页面同时抓取。可以看到打印的是有两个,
2024-06-24 09:59:43
781
原创 爬虫day2
bs4解析比较简单,但是呢,首先你需要了解一丢丢的html知识,然后再去使用bs4去提取,逻辑和编写难度就会非常简单和清晰.HTML(Hyper Text Markup Language)超文本标记语言,是我们编写网页的最基本也是最核心的一种语言.其语法规则就是用不同的标签对网页上的内容进行标记,从而使网页显示出不同的展示效果<h1>我爱你</h1>
2024-06-20 14:29:27
447
原创 爬虫学习。。。。
它通过模拟浏览器请求站点的行为,获取资源后分析并提取有用数据,这些数据可以是HTML代码、JSON数据或二进制数据(如图片、视频)。爬虫的用途广泛,包括但不限于收集数据、信息调查、刷流量与参与秒杀活动等。爬虫在法律上是合法的,像菜刀一样,只要不拿来砍人就不违法。
2024-06-19 16:01:57
2058
原创 【无标题】
提交查询页面,source可以点击,点击后是源代码flag在config.php里面,我们就需要访问该网页,接着正则匹配了config,php,传入参数source,读取会获取我们当前的访问路径,并且PHP在根据URI解析到对应文件后会忽略掉URL中多余的部分如果是,则返回。
2024-06-14 22:17:33
1396
原创 SSRF学习,刷题
给了一个Apache2的界面,翻译一下就是一个默认的界面,目录扫描可以看到flag.php,肯定是不能直接访问得到的,还有index.php,访问这个可以看到三个参数data,host,port还有fsockopen() 函数是 PHP 中用于打开一个网络连接的一种方法。它允许我们通过 TCP/IP 协议与远程服务器通信,发送请求并获取响应。fsockopen() 函数建立与指定主机和端口的 socket 连接。
2024-06-13 22:59:25
893
原创 [天翼杯 2021]esay_eval
成功返回该页面后就可以传入一句话木马,再连接蚁剑,但是权限不够,访问不了根目录,查看config.php.swp文件,涉及到vim泄露,还原文件后得知是redis数据库,给了root账户的密码,使用redis插件进行连接,连接后上传一个so文件用来进一步提权,加载该so文件后就可以进行命令执行。PREG_SET_ORDER: 结果排序为$matches[0]包含第一次匹配得到的所有匹配(包含子组), $matches[1]是包含第二次匹配到的所有匹配(包含子组)的数组,以此类推。
2024-06-12 20:23:10
1280
1
原创 【无标题】
需要找密码,进行目录扫描可以看到这三个文件。访问/secret给它说我的密码,就是参数为secret构造:?secret=1返回d,可以试着再把d传参看看。结果返回1,是翻来覆去的,测试有没有SSTI注入漏洞,构造:?结果报错了,而且错误出有源代码,app.py。flask的模板, 找到关键信息对传入的参数进行了一个RC4的解密,密钥是对解密后的内容render_template_string进行渲染,将渲染后的字符串转换为小写,然后检查是否包含 "ciscn" 字符串。
2024-06-07 21:22:56
778
原创 【无标题】
代码审计,rce,没有过滤ls,直接传参?rce=ls有flag.php,直接cat命令打开构造:?打开源代码也可以用tac命令?可以直接打印出来。
2024-06-04 22:03:19
1101
原创 【无标题】
他说模板都一样,可能有模板注入,再看后面POST传一个data参数尝试传参传1的时候显示1,可能有SSTI注入漏洞,测试一下{{7*7}}成功的执行了,说明存在SSTI漏洞,但是是什么模板还需要再判断{{config}}渲染函数看一下报错了,看报错内容,smarty模板所以这题是smarty模板的SSTI注入漏洞尝试命令执行,构造{{system('ls /')}}查看根目录下的文件可以看到有一个flag字样的文件,cat命令打开得到flag。
2024-06-03 21:29:38
1232
原创 【无标题】
有三个文件,flag.txthints.txt知道了flag在/fllllllllllllag所以filename=/fllllllllllllag,但是还需要hash以及知道了filename,还需要cookie_secret尝试直接传参,错误,得到:它又给了一个参数msg尝试传入1回显的是1,可能存在SSTI模板注入漏洞,测试一下构造?可以发现我们的payloud是执行了的,但没有具体显示搜了一下是标题的tornado模板注入。
2024-05-31 21:16:31
492
原创 CTFSHOW WEB
1.web11<?php function replaceSpecialChar($strParam){ $regex = "/(select|from|where|join|sleep|and|\s|union|,)/i"; return preg_replace($regex,"",$strParam); } if(strlen($password)!=strlen(replaceSp
2024-05-27 15:48:54
977
原创 【无标题】
方法safe_jinja对参数进行了过滤,将左右括号替换为空,出现config,self关键字直接页面输出None,通过url_for()与globals()函数,绕过黑名单。有两个路由,一个是根路由,一个是/shrine/参数,注册了一个名为FLAG的config,这里可能有flag,存在flask-jinja2模板注入,并且存在黑名单过滤。POST传参a和b,且ab都是字符串,a恒不等于b,但a的MD5值和b的MD5值又要相等,用MD5强碰撞绕过。得到index.php的内容,也就是源代码。
2024-05-25 14:56:39
861
原创 【无标题】
是文件包含漏洞,get传参url=php://inputphp://input可以访问请求的原始数据的只读流,将post请求的数据当作php代码执行。抓包。进行如下修改:得到:访问ctf_go_go_go页面得到flag。
2024-05-23 21:47:44
580
1
原创 【无标题】
从http包可以看出来这是一个sql的盲注的流量包,我们都知道sql盲注是需要一个一个的去判断字符的,所以只用先找到sql注入找flag的第一个字符,后面的字符也可以找到了CTRL+F可以打开匹配,正则匹配flag可以看到flag是从第152493开始注入的,搜索2,1可以看到第一个字符的值是102,对应的ASCII表是f.搜索3,1第二个字符的值是108,对应的ASCII表是l搜索4,1可以看到第三个字符的值是97,对应的ASCII表是a如此类推下去,最后flag为。
2024-05-22 20:24:53
1038
1
原创 期中考复现
一个提交flag的窗口,随便提交一个看看,它以弹窗的形式出来,说明是前端的,F12打开源代码看有js代码,一个base64编码,解码后就是flag。
2024-05-17 18:52:56
1012
原创 【无标题】
最后,将明文 flag 使用 bytes_to_long() 函数转换为长整数 m1,然后分别使用不同的公钥指数 e1 和 e2 对其进行 RSA 加密,得到了密文 flag1 和 flag2。即字典为,dict = {'乾':'111','巽':'110','离':'101','艮':'100','兑':'011','坎':'010','震':'001','坤':'000'}不互质(注意:"互质"和"互素"这两个术语在数学上是等价的,都表示两个数的最大公约数为 1,也就是除了 1 之外没有其他公共因子。
2024-05-13 16:09:01
1031
原创 【无标题】
PS:由于使用['__globals__']会造成500的服务器错误信息,并且当我直接输入search=globals时页面也会500,觉得这里应该是被过滤了,所以这里采用了字符串拼接的形式['__glo'+'bals__']接着测试列数:1/**/order/**/by/**/3#时正确,但1/**/order/**/by/**/4#时报错,说明有3列。构造:-1/**/union/**/select/**/1,2,3#有两个表flag和score,爆flag表的字段,也就是列。
2024-05-11 14:20:20
716
1
原创 [GYCTF2020]FlaskApp1
在jinja2模板引擎当中存在下面几个模板,而在这些模板当中可以输入值以及一些控制语句,在jinja2引擎中有两个模板渲染函数,而SSTI注入的原因是由于。通过源代码的框架可以判断是Flask,Flask是使用python编写的一个轻量级的web应用框架,模板引擎使用的是jinja2,遵循MVC模型。可以看到返回有this_is_the_flag.txt,然后对其进行读取,构造。的不正确的使用以及没有对用户输入的数据进行有效的过滤导致的.构造{{config}},先加密,再把加密结果解密,结果输出。
2024-05-09 22:21:26
401
1
原创 2024精武杯复现服务器和APK功能分析
使用管理套件命令rpm查询相关信息时间是:2022-2-24 13:13:01;加12个小时是因为他是PM下午,所以要加。该题最重要的就是服务器的搭建,题目给了四个盘,其中server4.E01为系统盘,其他三个为数据盘,可以用火眼工具RAID重组工具重组一下再创建虚拟机,系统是Linux系统然后打开,打开后可以用finalshell进行连接,需要修改/etc/hosts.allow文件的内容,把8.8.8.8改成all,就可以连接。
2024-05-03 22:13:51
1272
原创 2022长安杯电子取证复现
在分区1/web/app/目录下面找到jar文件,导出到本地并解压,一一打开查找,最后在cloud.jar文件里面找到监听7000端口的进程对应的文件名。找powershll的最后一条命令,打开检材2虚拟机的windows powershll,用上键就可以看到上一条命令,也就是最后一条命令。网站管理后台页面对应的网络端口,应该在admin目录下,找了半天都没有,看一下别人的。要找网站jar包的地址,可以查看压缩包jar哪里,然后看全路径。检材3的root账号密码,从命令入手,在历史命令里就可以看到。
2024-04-29 10:26:39
398
原创 【无标题]
这题主要就是先进行信息收集,寻找危险的网页,这里找到的是admin.php,接着就需要得到密码登录,登录后找漏洞点,我们可以修改写入一些输出的执行语句。这是Referer头的一个重要作用,通过检查HTTP请求中的Referer字段,可以验证请求来源,防止未经授权的网站链接到自己的资源,如图片或视频。第二题的绕过:md5()、sha1()函数无法处理数组,但是代码会继续运行,并且md5数组的返回值是NULL都相同。对于一些敏感文件类型,可以通过Referer字段限制访问,确保只有来自特定来源的请求被允许。
2024-04-29 09:58:14
380
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人