- 博客(25)
- 收藏
- 关注
原创 条件竞争(ctf.show web87)
我们在 Cookie 里设置了 PHPSESSID=test,PHP 将会在服务器上创建一个文件:/tmp/sess_test,但是对于默认配置 session.upload_progress.cleanup = on,文件上传后 session 文件内容会立即被清空。因为开发者在进行代码开发时常常倾向于认为代码会以线性的方式执行,但他们忽视了并行服务器会并发执行多个线程,这就会导致意想不到的结果。
2024-11-17 18:08:05
401
原创 sql注入基础知识
web页面通常会根据用户输出的内容生成动态的sql查询语句,如果数据库没有对用户输的语句进行合适的过滤导致攻击者可以通过特殊的sql语句来操作查询内容。
2024-11-12 21:34:58
387
原创 PHP反序列化靶场(php-SER-libs-main 第一部分)
此次靶场为utools-php-unserialize-main。适合有一定基础的师傅,内容是比较全面的,含有我们的大部分ctf中PHP反序列化的题型。
2024-11-12 21:26:20
1065
原创 正反shell反弹的区分
在这里面我们的win主机就是正向shell反弹,相对的对于kali而言就是反向shell反弹。反过来如果我们使用kali监听我们的win那么win就是反向shell而kali就是正向shell。在shell反弹中我们需要在win上面安装netcat(瑞士军刀)用于可以执行监听指令。指令中的4433代表我们监听的是4433端口,可以随意设置但是要确保两个指令的端口相同。在shell反弹中我们会根据参照物的不同来区分正反shell反弹。我们填写好我们的目标ip和端口后就可以自动生成相关指令。
2024-11-05 20:42:16
518
原创 五指cms安装
我在安装五指cms的过程中发现一个问题,我看到的大部分的安装指导并没有详细的告诉大家该怎样做。所以我写这篇博客来进行一个比较详细的指导。
2024-10-29 20:17:56
386
原创 DC-2靶机通关详解以及可能问题的解决
在flag1中给出来提示:你需要cewl,登录可以得到下一个flag,提示我们使用cewl工具获取网站密码。出现如图的问题最大的可能是因为我们的VMware的版本过高,我们只需要降低一下版本就可以了。我们可以根据flag2给出的提示猜测接下来是使用ssh连接,使用用户密码进行ssh连接。直接下一步即可,然后就可以对靶机进行更改网络连接为NAT我们就可以进行打靶了。直接下一步,然后命名好,可以将位置改为自己想要放置的地方。然后就可以正常执行我们的指令了,得到flag3.看flag4中的提示明显就是提权啊。
2024-10-27 13:57:25
873
原创 关于md5强比较和弱比较绕过的实验
在ctf比赛题中我们的md5强弱比较的绕过题型很多,大部分都是结合了PHP来进行一个考核。这一篇文章我将讲解一下最基础的绕过知识。
2024-10-13 20:28:55
1641
原创 [SWPUCTF 2023 秋季新生赛]Pingpingping
在payload中我们使用了“||”符号,“||” 是一个管道操作符,它用于在命令行中执行多个命令,当前一个命令执行成功时,才会执行后一个命令。这里我测试的是任何ip都可以。可以看到我们这里面的ping命令形式是不完整的,所以我们必须要先补全我们的ping命令再进行cat命令抓取。那么很明了的思路就是使用我们的cat命令抓取我们的flag。,它被转化为_之后,后面的字符就会被保留下来不会被替换。直接给出了我们的源代码,我来简单的进行一些代码解说。所以我们必须先转义前面的字符,以防止后面的点被转义。
2024-09-04 18:21:57
548
原创 [HNCTF 2022 WEEK2]Canyource
在 $input中匹配$pattern的内容,匹配到利用$replacement内容替换$pattern内容。作为递归的内容 ,当匹配完外层的abc(def(ghi))就会再次对def(ghi)再次进行一个关于。localeconv()返回一个包含与本地化设置相关的信息的关联数组,例如货币符号、小数点符号等。函数用于将数组的内部指针移动到数组的最后一个元素,并返回该元素的值。返回数组的第一个元素,因此这个元素应该是一个目录的路径。是 PHP 的一个内置函数,用于获取数组中当前元素的值。
2024-09-03 17:43:05
1015
原创 buuctf之[SCTF2019]Flag Shop(ruby模块注入)
我们要通过<%=%>进行模板注入,弹窗代码{params[:name][0,7]}使我们只能在模块中再进行2个字符的输入,也就是说我们不能够直接输入。为什么还需要一个SECRET参数加入呢,是为了可以搜索SECRET参数内容,然后使 <%=$'%>返回最后一次匹配的字符串是我们的密钥。可以猜测我们只需要将jkl的值改写的超过买flag的值即可。可以看到我们的密钥得到了,然后进行jkl的修改使其可以达到买flag的标准。填入我们的修改后的值。可以看到cookie是标准的三段式,可以猜测到是JWT,我们在。
2024-07-23 22:15:26
545
原创 buuctf练习之[羊城杯2020]easyphp
在这里我尝试过写入一句话木马但是连接一直返回空数据。想来是只能使用.htaccess文件来解析触发PHP文件达到一个攻击的目的了。
2024-07-20 13:57:53
718
原创 buuctf之[ISITDTU 2019]EasyPHP
可以看到过滤了许多函数,但是没有过滤掉scandir(),var_dump(),readfile(),print_r()等函数。然后我们挑选几个字符将其替换掉 ,这里我们选n==c^d^i 91 => ["9c","9b","96"],readline(end(scandir(.)))来进行读取。接下来就可以进行做题了,这种情况并没有过滤^很明显是使用一个异或绕过来进行rce的。可以看到有两个if语句,我们想要在绕过这两个if语句来进行漏洞执行。是一个参数掩码,表示只返回出现的字符。
2024-07-19 22:19:03
438
原创 [CSAWQual 2019]Web_Unagi XXE漏洞练习题
进来之后我们进行一个信息收集,在upload下可以看到有个here的超链接。点进去之后得到了如下的一些信息。使用我们的Visual Studio Code进行一个编码的转换,因为直接上传会被waf过滤。可以猜到是需要我们利用文件上传包含xxe漏洞利用来得到flag。利用我们学习的xxe漏洞的知识来进行一个模板的套用。最后进行一个文件上传即可得到flag。选择utf-16 LE,然后保存。这道题就是简单的xxe漏洞的注入。
2024-07-09 20:40:47
353
原创 PHP伪随机数的学习例题[MRCTF2020]Ezaudit
这是因为在相同的php版本之下随机数是固定的,那么以此我们可以推断出原随机数种子。我们可以进行一次测试来证实一下,php的随机数有漏洞,就是每一次的随机数都是固定的。我们先将给出的一个私钥$Public_key = KVQP0LdJKRaV3n9D来进行一个逆推。还下载了一个www.zip文件,解压后可以看到有一个index.php,点开进行一个代码审计。查看原网站的配置的php版本是:PHP/5.6.40。然后可以看到是一个很经典的php伪随机数的题。一道很有意思的php伪随机数的题。
2024-07-05 23:29:07
665
原创 xss学习记录
跨站脚本攻击(Cross-Site Scripting,简称 XSS)是一种常见的网络安全漏洞,发生在应用程序允许未经过滤的用户输入直接插入到网页中并被其他用户浏览时。攻击者可以利用 XSS 漏洞在受害者的浏览器中执行恶意脚本,从而窃取敏感信息、劫持用户会话、进行钓鱼攻击等。在xss的学习当中有疑问的话还是要多去查询一些信息。如果相进行一下实战的话我们的具体恶意代码需要大家自己去寻找。如果我放出来的话是违法规定的。需要多加练习来提升能力。
2024-06-25 13:08:16
1904
原创 sql注入之布尔盲注的学习记录
在web的学习过程中师傅们最需要的就是耐心,希望师傅们一定要自己去全部测试一遍,不要觉得麻烦。在sql注入中最常用的就是布尔盲注,如果师傅们需要提高注入效率我们可以使用python脚本来进行一个爬虫。这里我贴上一个脚本在实际使用中我们需要对脚本进行更改。res=''l=0r=127mid=(l+r)>>1#这一行是二分查找的核心,计算当前查找区间的中间位置。这里使用了位移运算符>>来实现除以2并向下取整的效果,等同于(l + r) // 2,但位移运算通常更快。
2024-06-20 12:04:49
888
原创 sql注入之跨库注入的学习记录
跨库注入跨库注入(Cross-database Injection)是一种SQL注入攻击技术,攻击者通过SQL注入漏洞,不仅能够操作当前数据库中的数据,还可以在同一数据库服务器上访问和操控其他数据库的数据。这种攻击方式可以大大扩大攻击者的影响范围和获取的信息量。等到了实战的时候各位师傅们就可以知道跨库注入的重要性了。
2024-06-18 16:34:54
487
原创 sql注入之宽字节注入的学习记录
在不同的语言中不同的文字所占有的字节是不同的英文与数字只占用一个字节我们可以看到在文档中我写入了一个字母在属性中可以看到所占字节为1如果是汉字呢?可以看到变成了三个字节。然后在英文数字与汉字之间还存在一种只占用两个字节的希腊字母,而我们的宽字节注入就是需要使用希腊字母来进行解析为不同的内容,从而影响SQL语句的结构和执行结果。现在我们可以打开sqli-labs的第32关来进行我们的一个测试?是不是会发现我们的注释符单引号被’\‘转义了,达不到我们闭合的一个目的了。
2024-06-18 12:11:44
344
原创 sql注入之报错注入的学习记录
有的看的仔细师傅会有疑问为什么有的我使用的查询数据时语句的内容是有的是两个语句最终都会得到正确的数据,但是得到正确数据之前的回显内容不同。是不是感觉很难以理解这句话的涵义。这其中的不同是为什么,希望师傅们自己去测试一下,自己去理解。因为我自身的语言表达能力有欠缺,解释不清楚。
2024-06-17 23:44:19
736
原创 sql注入之联合查询的学习记录
可以看到我们得到了所有的数据也就完成了一次成功的sql注入最后我在这里谈谈我当初在学这个sql注入时遇到的一些疑惑:在查询时?在这当中的1可不可以是其他的数字呢?当然是可以的,但是只会有报错的回显而。不为1时正常情况下:不为1时不正常情况下:可以看到比起使用1在检测有几个注入点时的效果没有任何变化,那么没有任何关系无论数字是多少。但是因为在用1时是一个固定的回显情况除非报错不会有任何改变那么在进行联合查询时是不能使用1的。可以看到使用1是不会爆出我们的数据库的。
2024-06-17 15:40:38
1627
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人