├── Probing.sh ├── README.md ├── mac-oui.db └── wifiharvester.py /Probing.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Written By SYChua, syworks@gmail.com 3 | 4 | LineWidth=80 5 | FolderUnassociated="/SYWorks/Unassociated" 6 | FolderSave="/SYWorks/Save" 7 | FolderDB="/SYWorks/Database" 8 | FolderTemp="/SYWorks/Temp" 9 | 10 | 11 | 12 | Norm="\033[0m" 13 | Bold="\033[1m" 14 | Italic="\033[3m" 15 | Uline="\033[4m" 16 | Blink="\033[5m" 17 | Outline="\033[6m" 18 | Invert="\033[7m" 19 | Nondisp="\033[8m" 20 | Strike="\033[9m" 21 | BoldOff="\033[22m" 22 | ItalicOff="\033[23m" 23 | UlineOff="\033[24m" 24 | BlinkOff="\033[25m" 25 | OutlineOff="\033[26m" 26 | InvertOff="\033[27m" 27 | NondispOff="\033[28m" 28 | StrikeOff="\033[29m" 29 | #Standard Color 30 | Black=$Norm"\033[30m" 31 | Red="\033[31m" 32 | Green="\033[32m" 33 | Brown="\033[33m" 34 | Blue="\033[34m" 35 | Purple="\033[35m" 36 | Cyan="\033[36m" 37 | Gray=$Norm"\033[37m" 38 | DGray="\033[1;30m" 39 | LRed="\033[1;31m" 40 | LGreen="\033[1;32m" 41 | Yellow="\033[1;33m" 42 | LBlue="\033[1;34m" 43 | Pink="\033[1;35m" 44 | LCyan="\033[1;36m" 45 | White="\033[1;37m" 46 | #White=$Norm"\033[1;30m" 47 | #Bold High Intensty 48 | BI_Black="\033[0;90m" 49 | BI_Red="\033[0;91m" 50 | BI_Green="\033[0;92m" 51 | BI_Yellow="\033[0;93m" 52 | BI_Blue="\033[0;94m" 53 | BI_Purple="\033[0;95m" 54 | BI_Cyan="\033[0;96m" 55 | BI_White="\033[0;97m" 56 | #High Intensity 57 | IBlack="\033[1;90m" 58 | IRed="\033[1;91m" 59 | IGreen="\e[1;92m" 60 | IYellow="\033[1;93m" 61 | IBlue="\033[1;94m" 62 | IPurple="\033[1;95m" 63 | ICyan="\033[1;96m" 64 | IWhite="\033[1;97m" 65 | 66 | CQuestion=$Bold$Green 67 | CSelect=$Bold$Yellow 68 | COption=$Bold$White 69 | CTitle=$Bold$Red$Underline 70 | CInfo1=$Bold$Blue 71 | CInfo2=$Bold$Yellow 72 | CInfo3=$Bold$Pink 73 | CCaption=$Norm$Green 74 | CCaptionB=$Bold$Green 75 | CWarn=$Bold$Red 76 | CTitle=$Red$Uline$Bold 77 | CSubTitle=$Yellow$Uline$Bold 78 | CText=$Norm$Gray 79 | CDetail=$Bold$Cyan 80 | 81 | #WIFI_MON="mon1" 82 | STYPE="All" 83 | #DELAY=1 84 | 85 | Exiting(){ 86 | echo -e $White"Exiting..." 87 | 88 | Close_Console $CONSOLE_PROBE 89 | clear 90 | } 91 | 92 | Drawline(){ 93 | LnStr="_" 94 | if [ "$2" != "" ]; then 95 | LnStr=$2; 96 | fi 97 | 98 | for lc in `seq 0 $1`; do echo -ne $LnStr; done;} 99 | 100 | DisplayHead(){ 101 | clear 102 | echo -e $Bold$Red"Probing Devices" 103 | echo -e "~~~~~~~~~~~~~~~~" 104 | echo -e $Norm$Yellow"Scripted 15 Jul 2011 - SYWorks, Updated 22 Aug 2011." 105 | echo -e $Norm$Gray"The application will be using the Airodump-NG to detect on probing devices. It will then re-arrange and display for easier user viewing." 106 | echo "" 107 | View="1" 108 | } 109 | 110 | DisplayAirGraph(){ 111 | if [ -f $MonitoredSSIDFile ]; then 112 | xterm -geometry 100x3-0-10 -iconic -bg black -fg white -fn 5x8 -title "Processing Graph" -e "cd /pentest/wireless/airgraph-ng; ./airgraph-ng.py -i $FolderUnassociated/NTA-01.csv -o $FolderUnassociated/Graph-CPG.png -g CPG; ./airgraph-ng.py -i $FolderUnassociated/NTA-01.csv -o $FolderUnassociated/Graph-CAPR.png -g CAPR ; exit; exec bash" 113 | # if [ -f $FolderUnassociated/Graph-CAPR.png ]; then 114 | # xterm -geometry 49x3-255-10 -iconic -bg black -fg white -fn 5x8 -title "Display Client to AP Relationship" -e "display $FolderUnassociated/Graph-CAPR.png ; exit; exec bash" & 115 | # fi 116 | if [ -f $FolderUnassociated/Graph-CPG.png ]; then 117 | xterm -geometry 49x3-0-10 -iconic -bg black -fg white -fn 5x8 -title "Display Common Probe Graph" -e "display $FolderUnassociated/Graph-CPG.png ; exit; exec bash" & 118 | fi 119 | else 120 | prints $CWarn"File Not Found !.. Operation Cancelled !" 121 | echo "" 122 | PressAnyKey 5 123 | fi 124 | } 125 | 126 | Convert_Signal(){ 127 | SIGNAL=`echo $1| sed 's/-//g'` 128 | SIGNAL=$(($SIGNAL-1)) 129 | if [ $SIGNAL -le 1 ]; then 130 | SIGNALSTR="E" 131 | SIGNALSTR2=" Unk " 132 | fi 133 | if [ $SIGNAL -gt 1 ] && [ $SIGNAL -le 40 ]; then 134 | SIGNALSTR="VG" 135 | SIGNALSTR2="V.Good" 136 | fi 137 | if [ $SIGNAL -gt 40 ] && [ $SIGNAL -le 55 ]; then 138 | SIGNALSTR="G" 139 | SIGNALSTR2=" Good " 140 | fi 141 | if [ $SIGNAL -gt 55 ] && [ $SIGNAL -le 70 ]; then 142 | SIGNALSTR="A" 143 | SIGNALSTR2=" Avg " 144 | fi 145 | if [ $SIGNAL -gt 70 ] && [ $SIGNAL -le 84 ]; then 146 | SIGNALSTR="P" 147 | SIGNALSTR2=" Poor " 148 | fi 149 | if [ $SIGNAL -ge 85 ] ; then 150 | SIGNALSTR="VP" 151 | SIGNALSTR2="V.Poor" 152 | fi 153 | } 154 | 155 | 156 | function ParseNotAssociated { 157 | DisplayHead 158 | i=0 159 | #Station MAC, First time seen, Last time seen, Power, # packets, BSSID, Probed ESSIDs 160 | # cl_array=`cat $FolderUnassociated/dump-01.csv | grep -a associated | awk -F , '{print $1 $2 $3 $4 $5 $6 $7}'` 161 | # cl_array=`cat $FolderUnassociated/dump-01.csv | grep -a associated` 162 | echo -e $Bold$Green"Detected Unassociated Probing Devices - $White" $STYPE 163 | echo -e $Norm$Green"Interface Used\t: $BI_Red$WIFI_MON" 164 | echo "" 165 | if [ "$View" == "" ]; then 166 | LineWidth=80 167 | echo -e $Bold$Red"SN\tDevice MAC\t\tFirst Found\t\tLast Seen" 168 | else 169 | LineWidth=140 170 | echo -e $Bold$Red"SN\tDevice MAC\t\tFirst Found\t\tLast Seen\t\tPower\t\tPacket\tOUI Name$Yellow" 171 | fi 172 | echo -ne $Norm$Yellow 173 | Drawline $LineWidth "~" 174 | echo "" 175 | 176 | if [ "$IndS" == "1" ]; then 177 | echo -e "Detected Unassociated Probing Devices" >> $AskSaveFile 178 | echo -e "SN\tDevice MAC\t\tFirst Found\t\tLast Seen\t\tPWR\tPackets" >> $AskSaveFile 179 | fi 180 | 181 | # cat $FolderUnassociated/dump-01.csv | grep -a -n Station | awk -F : '{print $1}'` 182 | 183 | cat $FolderUnassociated/NTA-01.csv | grep -a associated &> $FolderUnassociated/notassociated.csv 184 | while IFS=, read CLNMAC FTS LTS POWER PACKETS BSSID ESSID;do 185 | i=$(($i+1)) 186 | #echo -e " $Bold$Yellow"$i"$Bold$Green)\t"$CLNMAC"\t"$FTS"\t"$LTS"\t"$POWER"\t"$PACKETS"\t"$BSSID"\t[ $Bold$Yellow$ESSID$Green ]" 187 | POWER=`echo $POWER| sed 's/ //g'` 188 | PACKETS=`echo $PACKETS| sed 's/ //g'` 189 | ESSID=`echo $ESSID| sed 's/ \,/\,/g'` 190 | ESSID=`echo $ESSID| sed 's/\,/\ | /g'` 191 | NSESSID=`echo $ESSID| sed 's/ //g'` 192 | FTS=`echo $FTS` 193 | LTS=`echo $LTS` 194 | ESL=${#NSESSID} 195 | OUI=`echo $CLNMAC | sed 's/://g' | cut -c 1-6` 196 | OUIName=`cat $FolderDB/mac-oui.db | grep $OUI | awk '{print $2" "$3" "$4" "$5" "$6" "$7}'` 197 | OUIName=`echo $OUIName` 198 | Convert_Signal $POWER 199 | 200 | if [ "$FilterOn" == "1" ]; then 201 | PASS=0 202 | PASSCT=0 203 | if [ "$FilterMAC" != "" ]; then 204 | PASSCT=$((PASSCT+1)) 205 | CLNMAC_A=`echo $CLNMAC | sed 's/://g'` 206 | MACContain=`echo $CLNMAC_A | grep $FilterMAC` 207 | if [ "$MACContain" != "" ]; then 208 | PASS=$((PASS+1)) 209 | fi 210 | fi 211 | if [ "$FilterOUI" != "" ]; then 212 | PASSCT=$((PASSCT+1)) 213 | FilterOUIU=`echo $FilterOUI | tr 'a-z' 'A-Z'` 214 | OUINameU=`echo $OUIName | tr 'a-z' 'A-Z'` 215 | OUIContain=`echo $OUINameU | grep $FilterOUIU` 216 | if [ "$OUIContain" != "" ]; then 217 | PASS=$((PASS+1)) 218 | fi 219 | fi 220 | if [ "$FilterESSID" != "" ]; then 221 | PASSCT=$((PASSCT+1)) 222 | FilterESSIDU=`echo $FilterESSID | tr 'a-z' 'A-Z'` 223 | ESSIDU=`echo $ESSID | tr 'a-z' 'A-Z'` 224 | ESSIDContain=`echo $ESSIDU | grep $FilterESSIDU` 225 | if [ "$ESSIDContain" != "" ]; then 226 | PASS=$((PASS+1)) 227 | fi 228 | fi 229 | 230 | 231 | fi 232 | 233 | if [ "$STYPE" == "All" ]; then 234 | if [ "$PASS" == "$PASSCT" ]; then 235 | if [ "$ESL" == "1" ]; then 236 | if [ "$View" == "" ]; then 237 | echo -e $Bold$Yellow"$i$Green)\t$Cyan$CLNMAC\t$Green$FTS\t$LTS" 238 | echo -e $Bold$Red"\tOUI\t:$White $OUIName" 239 | echo -e $Bold$Red"\tPower\t:$Green $POWER$Bold$Blue [ $Cyan$SIGNALSTR2$Blue ]\t\t$Red\tPacket\t:$Green $PACKETS" 240 | echo -ne $Norm$Gray 241 | Drawline $LineWidth "-" 242 | echo 243 | else 244 | echo -e $BoldOff$Norm$Yellow"$i$Green)\t$Cyan$CLNMAC\t$Green$FTS\t$LTS\t$POWER$Blue [ $Cyan$SIGNALSTR2$Blue ]$Green\t$PACKETS$White\t$OUIName$Yellow" 245 | fi 246 | 247 | else 248 | if [ "$View" == "" ]; then 249 | echo -e $Bold$Yellow"$i$Green)\t$Cyan$CLNMAC\t$Green$FTS\t$LTS$Yellow" 250 | echo -e $Bold$Red"\tOUI\t:$White $OUIName" 251 | echo -e $Bold$Red"\tPower\t:$Green $POWER$Bold$Blue [ $Cyan$SIGNALSTR2$Blue ]\t\t$Red$Red\tPacket\t:$Green $PACKETS" 252 | echo -e $Bold$Red"\tProbed\t: $Norm$Pink$ESSID$Yellow" 253 | echo -ne $Norm$Gray 254 | Drawline $LineWidth "-" 255 | echo 256 | else 257 | echo -e $Bold$Yellow"$i$Green)\t$Cyan$CLNMAC\t$Green$FTS\t$LTS\t$POWER$Blue [ $Cyan$SIGNALSTR2$Blue ]$Green\t$PACKETS$White\t$OUIName$Yellow" 258 | echo -e $Bold$Red"\tProbed\t: $Norm$Pink$ESSID$Yellow" 259 | fi 260 | fi 261 | fi 262 | fi 263 | 264 | if [ "$STYPE" == "No ESSID" ]; then 265 | if [ "$PASS" == "$PASSCT" ]; then 266 | if [ "$ESL" == "1" ]; then 267 | if [ "$View" == "" ]; then 268 | echo -e $Bold$Yellow"$i$Green)\t$Cyan$CLNMAC\t$Green$FTS\t$LTS" 269 | echo -e $Bold$Red"\tOUI\t:$White $OUIName" 270 | echo -e $Bold$Red"\tPower\t:$Green $POWER$Bold$Blue [ $Cyan$SIGNALSTR2$Blue ]\t\t$Red\tPacket\t:$Green $PACKETS" 271 | echo -ne $Norm$Gray 272 | Drawline $LineWidth "-" 273 | echo 274 | else 275 | echo -e $Bold$Yellow"$i$Green)\t$Cyan$CLNMAC\t$Green$FTS\t$LTS\t$POWER$Blue [ $Cyan$SIGNALSTR2$Blue ]$Green\t$PACKETS$White\t$OUIName$Yellow" 276 | fi 277 | fi 278 | fi 279 | fi 280 | 281 | if [ "$STYPE" == "With ESSID" ]; then 282 | if [ "$PASS" == "$PASSCT" ]; then 283 | if [ "$ESL" != "1" ]; then 284 | if [ "$View" == "" ]; then 285 | echo -e $Bold$Yellow"$i$Green)\t$Cyan$CLNMAC\t$Green$FTS\t$LTS" 286 | echo -e $Bold$Red"\tOUI\t:$White $OUIName" 287 | echo -e $Bold$Red"\tPower\t:$Green $POWER$Bold$Blue [ $Cyan$SIGNALSTR2$Blue ]\t\t$Red\tPacket\t:$Green $PACKETS" 288 | echo -e $Bold$Red"\tProbed\t: $Norm$Pink$ESSID$Yellow" 289 | echo -ne $Norm$Gray 290 | Drawline $LineWidth "-" 291 | echo 292 | else 293 | echo -e $Bold$Yellow"$i$Green)\t$Cyan$CLNMAC\t$Green$FTS\t$LTS\t$POWER$Blue [ $Cyan$SIGNALSTR2$Blue ]$Green\t$PACKETS$White\t$OUIName$Yellow" 294 | echo -e $Bold$Red"\tProbed\t: $Norm$Pink$ESSID$Yellow" 295 | fi 296 | fi 297 | fi 298 | fi 299 | if [ "$IndS" == "1" ]; then 300 | if [ "$ESL" == "1" ]; then 301 | echo -e "$i)\t$CLNMAC\t$FTS\t$LTS\t$POWER\t$PACKETS\t$OUIName" >> $AskSaveFile 302 | else 303 | echo -e "$i)\t$CLNMAC\t$FTS\t$LTS\t$POWER\t$PACKETS\t$OUIName" >> $AskSaveFile 304 | echo -e "\tProbed : $ESSID" >> $AskSaveFile 305 | fi 306 | fi 307 | # echo "Probing : $ESSID" 308 | done < $FolderUnassociated/notassociated.csv 309 | if [ "$IndS" == "1" ]; then 310 | echo "" 311 | echo -e $White"Probing Devices Detail Saved to $Red$AskSaveFile$White ..." 312 | sleep 2 313 | fi 314 | IndS=0 315 | echo "" 316 | if [ "$FilterOn" == "1" ]; then 317 | echo -e $Pink$Uline"Filter On"$UlineOff 318 | if [ "$FilterMAC" != "" ]; then 319 | echo -e $White"MAC Filter\t:$Red "$FilterMAC 320 | fi 321 | if [ "$FilterESSID" != "" ]; then 322 | echo -e $White"ESSID Filter\t:$Red "$FilterESSID 323 | fi 324 | if [ "$FilterOUI" != "" ]; then 325 | echo -e $White"OUI Filter\t:$Red "$FilterOUI 326 | fi 327 | fi 328 | if [ "$View" == "" ]; then 329 | echo -ne $Norm$Blue 330 | Drawline $LineWidth 331 | echo "" 332 | echo "" 333 | 334 | echo -e $Bold$Red"X$Norm$DGray = Exit$Bold$Red\tA$Norm$DGray = All ESSID$Bold$Red\t\tN$Norm$DGray = No ESSID$Bold$Red\t\tE$Norm$DGray = With ESSID" 335 | echo -e $Bold$Red"P$Norm$DGray = Pause$Bold$Red\tS$Norm$DGray = Save Detail$Bold$Red\t\tT$Norm$DGray = Refresh Rate$Bold$Red\tV$Norm$DGray = Change View" 336 | echo -e $Bold$Red"F$Norm$DGray = Filter$Bold$Red\tC$Norm$DGray = Clear Filter$Bold$Red\tG$Norm$DGray = Probing Graph$Bold$Red" 337 | else 338 | echo -ne $Bold$Blue 339 | Drawline $LineWidth "~" 340 | echo "" 341 | echo -e $Bold$Red"X$Norm$DGray = Exit$Bold$Red\tA$Norm$DGray = All ESSID$Bold$Red\t\tN$Norm$DGray = No ESSID$Bold$Red\t\tE$Norm$DGray = With ESSID$Bold$Red\t\tP$Norm$DGray = Pause$Bold$Red\tT$Norm$DGray = Refresh Rate" 342 | echo -e $Bold$Red"F$Norm$DGray = Filter$Bold$Red\tC$Norm$DGray = Clear Filter$Bold$Red\tS$Norm$DGray = Save Detail$Bold$Red\t\tV$Norm$DGray = Change View$Bold$Red\t\tG$Norm$DGray = Probing Graph$Bold$Red" 343 | fi 344 | echo "" 345 | echo -ne $Norm$Green"Refreshing every $Bold$Red$DELAY$Norm$Green second..." 346 | any_key="" 347 | read -n1 -t $DELAY any_key 348 | case $any_key in 349 | p|P) echo -e "$Bold\033[36m" 350 | read -s -n 1 -p "Paused - Press any Key to continue..";; 351 | e|E) STYPE="With ESSID";; 352 | n|N) STYPE="No ESSID";; 353 | a|A) STYPE="All";; 354 | s|S) SaveProbe;; 355 | t|T) SetRefresh;; 356 | g|G) DisplayAirGraph;; 357 | x|X) Exiting 358 | exit;; 359 | c|C) FilterOn="" 360 | PASS=0 361 | PASSCT=0 362 | FilterMAC="" 363 | FilterESSID="" 364 | FilterOUI="";; 365 | v|V) if [ "$View" == "1" ]; then 366 | View="" 367 | else 368 | View="1" 369 | fi;; 370 | f|F) echo "" 371 | echo "" 372 | echo -e $Yellow$Uline$Bold"Filter Options :$UlineOff " 373 | echo -e $Bold$White"1|m) MAC Filter" 374 | echo -e "2|s) ESSID Filter" 375 | echo -e "3|o) OUI Name Filter" 376 | echo -ne $CQuestion"Select Filter Option : $CSelect" 377 | read filteropt 378 | if [ "$filteropt" == "" ]; then 379 | any_key="" 380 | else 381 | echo "" 382 | case $filteropt in 383 | 1|m|M) echo -ne $Green$Bold"Enter the MAC Address $Gray< Blank - Remove >$CQuestion : $Yellow$Bold" 384 | read FilterMAC 385 | if [ "$FilterMAC" != "" ]; then 386 | FilterMAC=`echo $FilterMAC | sed 's/://g' | sed 's/ //g' | sed 's/-//g'` 387 | FilterMAC=`echo $FilterMAC | tr '[a-z]' '[A-Z]'` 388 | FilterOn=1 389 | fi;; 390 | 2|s|S) echo -ne $CQuestion"Enter the ESSID $Gray< Blank - Remove >$CQuestion : $CSelect" 391 | read FilterESSID 392 | if [ "$FilterESSID" != "" ]; then 393 | FilterOn=1 394 | fi;; 395 | 3|o|O) echo -ne $CQuestion"Enter OUI Name $Gray< Blank - Remove >$CQuestion : $CSelect" 396 | read FilterOUI 397 | if [ "$FilterOUI" != "" ]; then 398 | FilterOn=1 399 | fi;; 400 | esac 401 | fi 402 | choice="";; 403 | *) ParseNotAssociated;; 404 | esac 405 | 406 | ParseNotAssociated 407 | read choice 408 | if [ "$choice" == "" ]; then 409 | ParseNotAssociated 410 | fi 411 | } 412 | 413 | SaveProbe(){ 414 | SavFile="Probe-"$(date | awk '{print $3" "$2" "$6"-"$4}') 415 | SavFile=`echo $SavFile | sed 's/://g'` 416 | SavFile=`echo $SavFile | sed 's/ /./g'` 417 | IndS=0 418 | echo "" 419 | echo "" 420 | echo -n -e $Bold$Green"Enter the location and filename to be saved :$Gray < Default - $FolderSave/$SavFile >$Green : $Yellow" 421 | read -p "" AskSaveFile; 422 | if [ "$AskSaveFile" == "" ]; then 423 | AskSaveFile=$FolderSave/$SavFile 424 | IndS="1" 425 | fi 426 | echo -e $White"Application will save the detail to $Red$AskSaveFile$White on next refresh" 427 | echo -e "$Bold\033[36m" 428 | read -s -n 1 -p "Press any Key to continue.." 429 | } 430 | 431 | Close_Console(){ 432 | PID=$1 && shift 433 | until [ "$PID" == "" ]; 434 | do 435 | # echo -n "Closing =$PID=" 436 | kill $PID &> /dev/null 437 | PID=$1 && shift 438 | done 439 | # PressAnyKey 440 | } 441 | 442 | 443 | SetRefresh(){ 444 | echo "" 445 | echo -ne $Bold$Green"Enter the refreshing rate in second, $Norm$Gray < Default - 5 > $BoldGreen : $Yellow" 446 | read -p "" DELAY; 447 | if [ "$DELAY" == "" ]; then 448 | DELAY=5 449 | else 450 | if [ $((DELAY)) -eq 0 ]; then 451 | DELAY=5 452 | fi 453 | fi 454 | 455 | 456 | } 457 | 458 | 459 | 460 | DisplayHead 461 | mkdir "/SYWorks" &> /dev/null 462 | mkdir $FolderUnassociated &> /dev/null 463 | mkdir $FolderSave &> /dev/null 464 | mkdir $FolderDB &> /dev/null 465 | mkdir $FolderTemp &> /dev/null 466 | 467 | 468 | if [ "$1" == "" ]; then 469 | echo -ne $Bold$Green"Enter the capturing interface,$Norm$Gray Example - mon0 $BoldGreen : $Yellow" 470 | read -p "" WIFI_MON; 471 | if [ "$WIFI_MON" == "" ]; then 472 | Exiting 473 | fi 474 | else 475 | WIFI_MON=$1 476 | fi 477 | if [ "$2" == "" ]; then 478 | SetRefresh 479 | else 480 | DELAY=$2 481 | fi 482 | 483 | 484 | rm $FolderUnassociated/*.* &> /dev/null 485 | rm $FolderUnassociated/notas*.* &> /dev/null 486 | #echo $1 487 | #echo $2 488 | #gnome-terminal --zoom=0.28 --geometry 0x0 -e "bash -c \"airodump-ng -w $FolderUnassociated/NTA -a $WIFI_MON; exec bash\"" & 489 | CONSOLE_PROBE=`ps -eo pid,args | grep "Probing Unassociated Client Console" | cut -c 1-6` 490 | Close_Console $CONSOLE_PROBE 491 | #gnome-terminal --zoom=0.3 --geometry 10x10 --title "Probing Unassociated Client Console" -e "bash -c \"airodump-ng -w $FolderUnassociated/NTA -a $WIFI_MON; exec bash\"" & 492 | xterm -geometry 100x3-0-0 -iconic -bg black -fg white -fn 5x8 -title "Probing Unassociated Client Console" -hold -e "airodump-ng -w $FolderUnassociated/NTA -a $WIFI_MON; exec bash" & 493 | echo $! >> $FolderTemp/PID 494 | CONSOLE_PROBE=`ps -eo pid,args | grep "Probing Unassociated Client Console" | grep "xterm" | cut -c 1-6` 495 | 496 | #gnome-terminal --geometry 100x50 --title "Probing Unassociated Client Console" -e "bash -c \"airodump-ng -w $FolderUnassociated/NTA -a $WIFI_MON; exec bash\"" & 497 | 498 | #CONSOLE_PROBE=`ps -eo pid,args | grep "Probing Unassociated Client Console" | grep "gnome" | cut -c 1-6` 499 | 500 | 501 | ParseNotAssociated 502 | 503 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | WiFi Harvester 2 | ~~~~~~~~~~~~~~~~ 3 | 4 | 5 | This is a beta release of WiFi Harvester and developer provide no support on problem faced on non Kali Linux OS. This script may be more applicable for pentester and those with at least some knowledge on wireless penetration testing. 6 | 7 | 8 | Similar to WIDS, this script required aircrack-ng suite, python 2.7, tshark to be installed on the system. To save hassle on all these issue, please use this script on Kali Linux/Backtrack as required applications already preinstalled. 9 | 10 | 11 | Simply download wifiharvester.py and run the application. 12 | 13 | 14 | Probing.sh is just an old probing bash script created years back. 15 | --------------------------------------------------------------------------------