Sziasztok!
Van valakinek vmi normálisan működő freeware progira ami akár rebootonként vagy anélkül vezetékes hálókártya MAC addressjét random módban változtatná?
Üdv, köszi!
- 2710 megtekintés
Hozzászólások
bash
ifconfig < interface > hw XX:XX:XX:XX:XX:XX
- A hozzászóláshoz be kell jelentkezni
Hello!
ha windows akkor pl smac
- A hozzászóláshoz be kell jelentkezni
Windowson jó esetben a legtöbb driverrel device managerből is átírható.
- A hozzászóláshoz be kell jelentkezni
szeretnéd elérni hogy egy idő után ne kapj ip-t a dhcp szervertől?;)
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
macchanger
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Ennek forráskódja is van, általában úgy lelhető meg.
Én így használom:
#!/bin/bash
# van a gyokerben egy conf nevu fajlom, melyben megadom, hogy a wlan az 0 vagy 1
# ezzel a sorral:
# wlan=wlan1
#
# ...aztan kigreppelve atadom a macchangernek a cuccost:
#
wlan=`cat /conf | grep wlan | sed 's/wlan=//g'`
valami="00:**:**:**:**:**"
ifconfig $wlan down
macchanger $wlan -m $valami
ifconfig $wlan up
ifconfig $wlan | grep "HWaddr"
exit 0
#######################x
Ez a script meg lefordíccsa' neked:
#!/bin/bash
#Automatically Created by slkbuild 0.5
#Maintainer: George Vlahavas
#url: http://www.alobbs.com/macchanger
######Begin Redundant Code######################################
check_for_root() {
if [ "$UID" != "0" ]; then
echo "You need to be root"
exit 1
fi
}
clean_dirs () {
for COMPLETED in src pkg; do
if [ -e $COMPLETED ]; then
rm -rf $COMPLETED
fi
done
}
clean_old_builds () {
rm -rf $package.{t[xlgb]z,md5}
clean_dirs
}
set_pre_permissions() {
cd $startdir/src
find . -perm 664 -exec chmod 644 {} \;
find . -perm 600 -exec chmod 644 {} \;
find . -perm 444 -exec chmod 644 {} \;
find . -perm 400 -exec chmod 644 {} \;
find . -perm 440 -exec chmod 644 {} \;
find . -perm 777 -exec chmod 755 {} \;
find . -perm 775 -exec chmod 755 {} \;
find . -perm 511 -exec chmod 755 {} \;
find . -perm 711 -exec chmod 755 {} \;
find . -perm 555 -exec chmod 755 {} \;
}
gzip_man_and_info_pages() {
for DOCS in man info; do
if [ -d "$startdir/pkg/usr/share/$DOCS" ]; then
mv $startdir/pkg/usr/share/$DOCS $startdir/pkg/usr/$DOCS
if [[ ! "$(ls $startdir/pkg/usr/share)" ]]; then
rm -rf $startdir/pkg/usr/share
fi
fi
if [ -d "$startdir/pkg/usr/$DOCS" ]; then
# I've never seen symlinks in info pages....
if [ "$DOCS" == "man" ]; then
(cd $startdir/pkg/usr/$DOCS
for manpagedir in $(find . -type d -name "man*" 2> /dev/null) ; do
( cd $manpagedir
for eachpage in $( find . -type l -maxdepth 1 2> /dev/null) ; do
ln -s $( readlink $eachpage ).gz $eachpage.gz
rm $eachpage
done )
done)
fi
find $startdir/pkg/usr/$DOCS -type f -exec gzip -9 '{}' \;
fi
done
[ -a $startdir/pkg/usr/info/dir.gz ] && rm -f $startdir/pkg/usr/info/dir.gz
}
set_post_permissions() {
for DIRS in usr/share/icons usr/doc; do
if [ -d "$startdir/pkg/$DIRS" ]; then
if [ "$DIRS" == "usr/doc" ]; then
find $startdir/pkg/$DIRS -type f -exec chmod 644 {} \;
find $startdir/pkg/$DIRS -type d -exec chmod 755 {} \;
fi
fi
[ -d $startdir/pkg/$DIRS ] && chown root:root -R $startdir/pkg/$DIRS
done
[ -d $startdir/pkg/usr/bin ] && find $startdir/pkg/usr/bin -user root -group bin -exec chown root:root {} \;
}
copy_build_script() {
mkdir -p $startdir/pkg/usr/src/$pkgname-$pkgver/
cp $startdir/build-$pkgname.sh $startdir/pkg/usr/src/$pkgname-$pkgver/build-$pkgname.sh
[ -f $startdir/SLKBUILD ] && cp $startdir/SLKBUILD $startdir/pkg/usr/src/$pkgname-$pkgver/SLKBUILD
}
create_package() {
ls -lR $startdir/pkg
cd $startdir/pkg
/sbin/makepkg -l y -c n $startdir/$package.txz
cd $startdir
md5sum $package.txz > $startdir/$package.md5
}
strip_binaries() {
cd $startdir/pkg
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \
xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \
xargs strip --strip-unneeded 2> /dev/null
}
#########End Redundant Code#####################################
#########Begin Non Redundant Code##############################
prepare_directory() {
mkdir $startdir/src
mkdir -p $startdir/pkg/usr/src/$pkgname-$pkgver
for SOURCES in ${source[@]}; do
protocol=$(echo $SOURCES | sed 's|:.*||')
file=$(basename $SOURCES | awk -F= '{print $NF}')
if [ ! -f "$file" ]; then
if [ "$protocol" = "http" -o "$protocol" = "https" -o "$protocol" = "ftp" ]; then
echo -e "\nDownloading $(basename $SOURCES)\n"
wget $SOURCES -O $file
if [ ! "$?" == "0" ]; then
echo "Download failed"
exit 2
fi
else
echo "$SOURCES does not appear to be a url nor is it in the directory"
exit 2
fi
fi
cp -R $file $startdir/src
if ! [ "$protocol" = "http" -o "$protocol" = "https" -o "$protocol" = "ftp" ]; then
cp -R $startdir/$(basename $SOURCES) $startdir/pkg/usr/src/$pkgname-$pkgver/
fi
done
}
extract_source() {
cd $startdir/src
if [[ "$(ls $startdir/src)" ]]; then
for FILES in ${source[@]}; do
FILES="$(basename $FILES | awk -F= '{print $NF}')"
file_type=$(file -biz "$FILES")
unset cmd
case "$file_type" in
*application/x-tar*)
cmd="tar -xf" ;;
*application/x-zip*)
cmd="unzip" ;;
*application/zip*)
cmd="unzip" ;;
*application/x-gzip*)
cmd="gunzip -d -f" ;;
*application/x-bzip*)
cmd="bunzip2 -f" ;;
*application/x-xz*)
cmd="xz -d -f" ;;
*application/x-lzma*)
cmd="lzma -d -f" ;;
esac
if [ "$cmd" != "" ]; then
echo "$cmd $FILES"
$cmd $FILES
fi
done
elif [ ! "$source" ]; then
echo -n "" # lame fix
else
echo "no files in the src directory $startdir/src"
exit 2
fi
}
build() {
cd $startdir/src/$pkgname-$pkgver
./configure --prefix=/usr --libdir=/usr/lib${LIBDIRSUFFIX} --localstatedir=/var --sysconfdir=/etc
make || return 1
make install DESTDIR=$startdir/pkg
}
create_slackdesc() {
mkdir $startdir/pkg/install
cat <<"EODESC" >$startdir/pkg/install/slack-desc
macchanger: macchanger - vie/manipulate the MAC address of network interfaces
macchanger:
macchanger: GNU MAC Changer is a GNU/Linux utility for viewing/manipulating the
macchanger: MAC address of network interfaces. It includes the following features:
macchanger: * Set specific MAC address of a network interface
macchanger: * Set the MAC randomly
macchanger: * Set a MAC of another vendor
macchanger: * Set another MAC of the same vendor
macchanger: * Set a MAC of the same kind (eg: wireless card)
macchanger: * Display a vendor MAC list (today, 6800 items) to choose from
macchanger:
EODESC
}
copy_docs() {
for stuff in ${docs[@]}; do
if [ ! -d "$startdir/pkg/usr/doc/$pkgname-$pkgver" ]; then
mkdir -p $startdir/pkg/usr/doc/$pkgname-$pkgver
fi
find $startdir/src -type f -iname "$stuff" -exec cp -R '{}' $startdir/pkg/usr/doc/$pkgname-$pkgver \;
done
}
create_source_file(){
[ -f $package.src ] && rm $package.src
if [ ! -z $sourcetemplate ]; then
echo $sourcetemplate/SLKBUILD >> $package.src
echo $sourcetemplate/build-$pkgname.sh >> $package.src
for SOURCES in ${source[@]}; do
protocol=$(echo $SOURCES | sed 's|:.*||')
if ! [ "$protocol" = "http" -o "$protocol" = "https" -o "$protocol" = "ftp" ]; then
if [ ! -z $sourcetemplate ]; then
echo $sourcetemplate/$(basename $SOURCES) >> $package.src
else
echo $(basename $SOURCES) >> $package.src
fi
else
echo $SOURCES >> $package.src
fi
done
fi
}
post_checks(){
# Ideas taken from src2pkg :)
if [ -d "$startdir/pkg/usr/doc/$pkgname-$pkgver" ]; then
for DIRS in usr/doc/$pkgname-$pkgver usr/doc; do
cd $startdir/pkg/$DIRS
if [[ $(find . -type f) = "" ]] ; then
cd ..
rmdir $DIRS
fi
done
fi
# if the docs weren't deleted ...
if [ -d "$startdir/pkg/usr/doc/$pkgname-$pkgver" ]; then
cd $startdir/pkg/usr/doc/$pkgname-$pkgver
#remove zero lenght files
if [[ $(find . -type f -size 0) ]]; then
echo "Removing some zero lenght files"
find . -type f -size 0 -exec rm -f {} \;
fi
fi
# check if we need to add code to handle info pages
if [[ -d $startdir/pkg/usr/info ]] && [[ ! $(grep install-info $startdir/pkg/install/doinst.sh &> /dev/null) ]] ; then
echo "Found info files - Adding install-info command to doinst.sh"
INFO_LIST=$(ls -1 $startdir/pkg/usr/info)
echo "" >> $startdir/pkg/install/doinst.sh
echo "if [ -x usr/bin/install-info ] ; then" >> $startdir/pkg/install/doinst.sh
for page in $(echo $INFO_LIST) ; do
echo " usr/bin/install-info --info-dir=usr/info usr/info/$page 2>/dev/null" >> $startdir/pkg/install/doinst.sh
done
echo "fi" >> $startdir/pkg/install/doinst.sh
fi
[[ -e $startdir/pkg/usr/info/dir ]] && rm -f $startdir/pkg/usr/info/dir
if [ -d $startdir/pkg/etc ]; then
cd $startdir/pkg/
for conf in $(find ./etc -type f) ; do
conf=${conf: 2}
dotnew=( "${dotnew[@]}" "$conf" )
done
fi
if [[ "$dotnew" ]]; then
for files in ${dotnew[@]} ; do
fullfile="${startdir}/pkg/${files}"
if [ -e "$fullfile" ]; then
mv $fullfile ${fullfile}.new
else
echo "$fullfile was not found"
exit 2
fi
done
cat<<"EODOTNEW" >>$startdir/pkg/install/doinst.sh
#Added by slkbuild 0.5
dotnew() {
NEW="${1}.new"
OLD="$1"
if [ ! -e $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
rm $NEW
fi
}
EODOTNEW
for i in ${dotnew[@]}; do
echo "dotnew $i" >> $startdir/pkg/install/doinst.sh
done
fi
}
####End Non Redundant Code############################
#Variables
startdir=$(pwd)
SRC=$startdir/src
PKG=$startdir/pkg
pkgname=macchanger
pkgver=1.5.0
pkgrel=1gv
arch=i486
package=$pkgname-$pkgver-$arch-1gv
source=("ftp://ftp.gnu.org/gnu/macchanger/macchanger-1.5.0.tar.gz")
docs=(readme install copying changelog authors news todo)
export CFLAGS="-O2 -march=i486 -mtune=i686"
export CXXFLAGS="-O2 -march=i486 -mtune=i686"
#Execution
check_for_root
clean_old_builds
prepare_directory
extract_source
set_pre_permissions
build
if [ ! "$?" = "0" ]; then
echo "build() failed."
exit 2
fi
create_slackdesc
post_checks
copy_docs
strip_binaries
gzip_man_and_info_pages
set_post_permissions
copy_build_script
create_package
create_source_file
echo "Package has been built."
echo "Cleaning pkg and src directories"
clean_dirs
---
--- A gond akkor van, ha látszólag minden működik. ---
---
- A hozzászóláshoz be kell jelentkezni
Még 1.
Azért használom, mert 2 laptopot hrdok és felváltva csatlakozom ugyanazzal a mekádresszel valahova, ahol szűrés van biztonságilag.
Kényelmileg meg nem kedvelik, ha valaki több géppel akarja a hálózatot használni.
Erre jó, a többi felhasználás pl. angliában büntetendő.
Arra nem gondoltam, hogy egyes AP nem ad IP-t, ha észlel valami randomMACaddress-megadást, ez érdekes.
---
--- A gond akkor van, ha látszólag minden működik. ---
---
- A hozzászóláshoz be kell jelentkezni
Arra nem gondoltam, hogy egyes AP nem ad IP-t, ha észlel valami randomMACaddress-megadást, ez érdekes.
Ebben semmi érdekes nincs, jobb helyeken ez alapértelmezett és nem csak wifire! Cisco-nál, HP-nál arp inspection néven fut.
- A hozzászóláshoz be kell jelentkezni
Van erre beépített eszköz is:
ip link set dev ethX address XX:XX:XX:XX:XX:XX
- A hozzászóláshoz be kell jelentkezni