
私はあなたのMACアドレスをリストから選択したメーカーのMACアドレスに変更するBAShスクリプトを作成しました。スクリプトの実行の最後の部分では、完了する前に停止します。その部分のコードは次のとおりです。
function spoofUseMAC() {
echo
read -p "[*] $($stopAllFX; $bgBlack; $white)Enter the number code for manufacturer: >>> " num
echo "[-] Generating MAC Address"
num=$( expr $num - 1 )
declare -a array
while read -r; do
array+=( "$REPLY" )
done < addr.txt
end=$( for i in {1..6} ; do echo -n ${hexchars:$(( $RANDOM % 16 )):1} ; done | sed -e 's/\(..\)/:\1/g' )
macAddress=${array[$num]}$end
echo "[-] MAC Address generated !"
echo "[-] Using address: $macAddress"
$skyBlue; $bold; echo
ifconfig
$white
read -p "[*] $($stopAllFX; $bgBlack; $white)Select an interface: >>> " iface
$yellow; echo "[-] $iface selected !"
$white; echo "[-] Disabling $iface ..."
ifconfig $iface down
ifconfig '$iface' hw ether '$macAddress'
echo "[-] MAC Address spoofed !"
sleep 1
echo "[-] Enabling $iface ..."
ifconfig '$iface' up
echo "[-] $iface enabled !"
echo "[-] Using address: $macAddress"
exit
}
function spoofSearchAgainOrNot() {
$bold; $white; echo
echo "[*] $($stopAllFX; $bgBlack; $white)Please select an option from the list below:"
$yellow; $bold; echo " [$($white)0$($yellow)] $($stopAllFX; $bgBlack; $white)Search again"
$yellow; $bold; echo " [$($white)1$($yellow)] $($stopAllFX; $bgBlack; $white)Use one of these"
read -p ">>> " searchAgainOrNot
if [[ "$searchAgainOrNot" == "0" ]]; then
spoofSearch
elif [[ "$searchAgainOrNot" == "1" ]]; then
spoofUseMAC
else
spoofSearchAgainOrNot
fi
}
# Spoof, search option selected
function spoofSearch() {
$bold; echo
read -p "[*] $($stopAllFX; $bgBlack; $white)Search for a manufacturer: >>> " search
$blue; awk -F '#' '{printf("%10d %s\n", NR, ":" $1 )}' /usr/bin/oui.txt | grep -i $search
spoofSearchAgainOrNot
}
# Spoof
function spoof() {
echo; $white
echo "[*] $($stopAllFX; $bgBlack; $white)Please select an option from the list below:"
$yellow; $bold; echo " [$($white)0$($yellow)] $($stopAllFX; $bgBlack; $white)Search for a manufacturer"
$yellow; $bold; echo " [$($white)1$($yellow)] $($stopAllFX; $bgBlack; $white)Browse for a manufacturer through $($bold)long $($stopAllFX; $bgBlack; $white)list"
read -p ">>> " searchOrBrowse
if [[ $searchOrBrowse == "0" ]]; then
spoofSearch
elif [[ $searchOrBrowse == "1" ]]; then
spoofBrowse
else
spoof
fi
}
このスクリプトを実行した後、なぜインターネットを使用できないのですかgit clone
?could not resolve hostname: github.com
なぜまだ終わっていないのですか?
編集:これはMacOSとLinuxで動作します。 MacOSにはコマンドはありませんが、ip route
Linuxではip route
次のようになります。
192.168.0.0/24 dev wlp1s0 proto kernel scope link src 192.168.0.18
192.168.0.0/24 dev wlp1s0 proto kernel scope link src 192.168.0.18 metric 600
答え1
一部のカードは、MACアドレスの変更/なりすましに少し面倒です。
OSXでは、インターフェイスMACアドレスの変更、特にWi-Fiインターフェイスを正しく実行するには何度も実行する必要があります。たとえば、最新バージョンのOSX / MacOSでは、特定の時間内に実行する必要があると思うため、頻繁にループする必要があります。通常、最初は機能しません。これを仮定します。
OSXでは、インターフェイス/ドライバがMACの後数秒間混乱しているように見えますが、回復することは注目に値します。
珍しいブランドはそれを気に入らないかもしれませんが、一部のブランドでは、製造元IDの最初の3オクテット(最初の6桁の「:」を除く)を変更することはお勧めできません。
多くの場合、デフォルトルートを失ったり、ルーター/ APがユーザーの概念を失うことがあります。ほとんどのプロセスは自動的に実行される必要がありますが、場合によってはLinuxでMACアドレスを変更してから再起動する必要があります。 。
答え2
問題を発見しました。$iface
sのいずれかにはならない引用符がありました。