38
HAKIN9
ATAK
5/2009
O
d dłuższego czasu zwykło się używać
terminu inżynieria społeczna jako
pojęcia określającego metody oraz
sposoby pozyskiwania poufnych informacji,
zaliczając do nich m.in. hasła czy poufne
informacje umożliwiające nieautoryzowany
dostęp do systemów lub środków finansowych.
Techniki socjotechniczne wykorzystywane
są zwykle podczas rozmów telefonicznych
lub innych interakcji personalnych. Medium
pośredniczącym jest wtedy zwykle telefon, ale
może nim być również sieć bezprzewodowa.
W tym artykule przedstawię Państwu, w
jaki sposób agresorzy starają się wyłudzić
informacje od użytkowników oraz jak się przed
takimi próbami zabezpieczyć.
W dzisiejszych realiach hotspoty nie są już
niczym wyjątkowym, spotykamy je w centrach
dużych miast, w restauracjach, na lotniskach.
Wiele z nich jest bezpłatnych, ale zdarzają się
i takie, za dostęp do których musimy zapłacić.
Zwykle jedyną formą płatności jest karta
płatnicza lub kupony, które można kupić w
ajencjach zrzeszonych z dostawcą hotspota.
Użytkownicy takich firm często bezgranicznie
ufają technologii bezprzewodowej oraz firmom
świadczącym za jej pośrednictwem swoje
usługi. Nieświadomość najczęściej wynika
albo z zaufania, albo z roztargnienia. Jako
że sieci bezprzewodowe same w sobie nie
gwarantują bezpieczeństwa, użytkownicy
nie mają możliwości weryfikacji nadajnika.
MACIEJ WIŚNIEWSKI
Z ARTYKUŁU
DOWIESZ SIĘ
jak uruchomić sieć w trybie
SoftAP,
jak podszyć się pod płatny punkt
dostępowy,
dlaczego należy uważać na
płatne punkty HOTSPOT,
jak hakerzy piorą brudne
pieniądze.
CO POWINIENEŚ
WIEDZIEĆ
znać podstawy Linuksa,
jak kompilować sterowniki do
kart bezprzewodowych,
znać podstawy działania sieci
Wi-Fi.
Niestety, mogą czyhać na nich co najmniej
trzy zagrożenia. Pierwszym z nich są płatne
punkty dostępowe – atakujący podszywa się
pod prawdziwy nadajnik, imitując w ten sposób
legalnego nadawcę, podszywając się pod
legalnie działający access point oraz imitując
stronę płatności. Kolejnym zagrożeniem mogą
być bezpłatne nadajniki, przekierowujące ruch
klientów zdalnych do Internetu i jednocześnie
podsłuchujące wszystko, co przez nie
przechodzi. Ostatnim zagrożeniem może być
sama technologia. Przy stosowaniu powietrza
jako medium transmisyjnego jesteśmy skazani
na to, że każdy zainteresowany ma możliwość
podsłuchania naszej komunikacji. Ponieważ
sama technologia szyfrowania sieci Wi-Fi nie
jest przedmiotem zainteresowania mojego
artykułu, ten aspekt pominiemy.
Sprzęt potrzebny do budowania sieci
bezprzewodowych drastycznie staniał w ciągu
ostatnich dwóch lat, nie jest już problemem
nabycie nawet profesjonalnych nadajników
oraz anten potrzebnych do nadawania sygnału
nawet w obrębie parunastu kilometrów. Jako
że naszym głównym celem będzie wykradanie
danych, na pewno nie będziemy chcieli zostać
zauważeni. Do tego celu możemy wykorzystać
dwie metodologie. Pierwszym podejściem
może być nadawanie sygnału z pewnego
oddalenia. Ma to swoje wady, jak również
zalety – na pewno łatwiej nam będzie się
wycofać, jeśli przez przypadek zostaniemy
Stopień trudności
Defraudacje z
użyciem Rogue
Acces Points
Czy jest możliwa kradzież numerów kart kredytowych z użyciem
Wifi? Sieci bezprzewodowe stały się bardzo dobrym celem dla różnej
maści hakerów. Dzieje się tak, dlatego że łatwość dostępu oraz
bardzo trudna i czasochłonna procedura namierzania przestępców,
daje nieograniczone możliwości do działań kryminogennych.
39
HAKIN9
DEFRAUDACJE Z UŻYCIEM ROGUE ACCES POINTS
5/2009
namierzeni. Problemem może jednak
okazać się moc naszego nadajnika,
która powinna być wyższa od legalnie
działającego punktu dostępowego. Inną
metodą może być nadawanie sygnału
w bezpośredniej bliskości nadajnika.
Dzięki takiemu podejściu możemy użyć
relatywnie słabszej karty (na przykład tej
wbudowanej w laptopa) i przy tym nie
będzie konieczności używania anteny
zewnętrznej.
W naszym przykładzie posłużymy się
ulubioną przez wardriverów dystrybucją
Linuksa Backtrack w wersji 3.0. Kartą
sieciową będzie AWUS036H Alpha
network (z uwagi na moc nadawania
500 mW). Jest to ogromna moc, dzięki
czemu bez przeszkód będziemy mogli
udawać spoofowany AP. Możemy równie
dobrze nadawać na innym kanale niż AP,
ale wtedy zmniejszamy szanse, że ofiara
wybierze akurat nasz hotspoot.
Nasze przygotowania musimy
zacząć odpowiednio wcześniej, by bez
przeszkód przeprowadzić atak. Musimy
również zdobyć oryginalną stronę
logowania oraz płatności. Najlepiej to
zrobić poprzez fizyczne pobranie strony z
legalnego nadajnika. Najprościej będzie
zapisać stronę HTML po to, by zachować
układ oraz treść strony, a dostosowanie
systemu logowania w PHP nie powinno
być już większym problemem. Pod
adresem http://www.hotscripts.pl/PHP/
Skrypty-i-komponenty/Uzytkownicy każdy
powinien znaleźć coś dla siebie. Warto
jednak przetestować taką stronę na
swoim lokalnym serwerze, aby upewnić
się, czy skrypt zachowuje się tak jak
tego oczekujemy i jest jak najbardziej
podobny do oryginalnej strony. W
większości przypadków wystarczy
nam skopiowana strona główna
oraz dwie podstrony oznajmiające
akceptację płatności lub niepoprawność
wprowadzonych danych …
Konfigurowanie karty bezprzewodowej
w trybie SoftAP przysparza nierzadko
wielu problemów, dlatego opiszę
teraz, jak przejeść przez ten proces
bez kłopotów. Za przykład bazowy
wykorzystamy sterowniki Madwifi,
obsługujące większość kart
zbudowanych na rozwiązaniach
Atherosa. Inne sterowniki obsługujące
tryb AP to m.in. RTL81xx, RT61 oraz
PRISM, jednakże proces konfiguracji
może się w ich przypadku lekko
różnić od opisanego poniżej. Źródła
możemy pobrać z witryny http://
madwifi-project.org, następnie trzeba je
skompilować przy pomocy poleceń
make
| make install | modprobe ath _
pci
. Przedtem jednak należy upewnić się,
czy nie mamy w systemie zainstalowanej
innej wersji Madwifi (np. Ath5k) – tutaj
pomocna okaże się komenda,lsmod.
Po przebrnięciu przez proces instalacji
sterowników musimy skonfigurować
parametry dostępowe (Listing 1 pokazuje
przykładową konfigurację). Parametr rate
należy dostosować do tego używanego
w spoofowanym AP, często się jeszcze
zdarza, że punkty dostępowe nadają
wyłącznie w standardzie 802.11b.
Możemy teraz przystąpić do
przygotowania naszego Access Pointa.
Do tego celu posłużymy się kombinacją
narzędzi natywnie dostępnych w
Backtracku – wykorzystamy Airsnarfa,
iptables, Apache'a oraz demona dhcpd.
Zakładamy, że nasz hotspot nie
będzie oferował żadnego szyfrowania,
by każdy użytkownik mógł bez
przeszkód skorzystać z naszych usług.
Przystępujemy teraz do konfiguracji
DHCP. Zakładamy, że nasza domyślna
polityka będzie polegać na przydzielaniu
każdemu zainteresowanemu klientowi
poprawnego adresu IP, adresu IP
naszego serwera, oraz adresu serwera
DNS, w którego roli również będzie
występował nasz komputer. Jeśli nie
macie jeszcze demona dhcpd, można
go łatwo doinstalować np. poleceniem
slapt-get –update & slapt-get -
-install dhcp-3.0.4-i486-2
, a dla
Debiana np. apt-get install dhcpd.
Musimy skonfigurować klienta DHCP,
w tym przypadku użyjemy demona
dhcpd. Zakładamy, że nasza sieć będzie
klasy A (10.0.0.X), a maską sieci będzie
255.255.255.224, dzięki czemu będziemy
mogli podłączyć 28 klientów. Naszym
routerem pośredniczącym (pełniącym
również funkcję serwera DNS) będzie
10.0.0.1, nazwę domeny ustalamy
zgodnie z nazwą legalnego AP.
Możemy teraz przygotować nasz
serwer WWW. Kopiujemy treść naszej
strony np. do /var/www/httpdocd.
Lokalizację tę musimy jeszcze
uwzględnić w pliku konfiguracyjnym
/etc/apache/httpd.conf, dodatkowo
warto się upewnić, czy włączony jest
interpreter PHP. Przydatne może być
również SSL, oczywiście o ile będziemy
je wykorzystywali. Dla własnej wygody
utworzymy sobie skrypty startowe, ale o
tym za chwilę.
Musimy skonfigurować jeszcze
naszego firewalla, by przekazywał
Rysunek 1.
Liczba defraudacji online oraz strat w USA
ATAK
40
HAKIN9 5/2009
41
HAKIN9
5/2009
DEFRAUDACJE Z UŻYCIEM ROGUE ACCES POINTS
pod odpowiedni adres IP wszystkie
zapytania DNS. Możemy przygotować
do tego celu praktyczny skrypt, podobny
do pokazanego na Listingu 3. Skrypt
utworzymy poleceniem
touch /root/
iptables _ set chmod +x /root/
iptables _ set
.
W razie potrzeby możemy dodatkowo
np. zablokować cały ruch wychodzący
dla wszystkich klientów i dodawać
regułkę ALLOW dla użytkowników, którzy
przejdą proces rejestracji lub autoryzacji.
Zadanie to samo w sobie nie jest
skomplikowane, jedyna trudność, na
jaką możemy napotkać, to powiązanie
skryptów PHP z regułami iptables.
Możemy ten problem łatwo rozwiązać
poprzez nadanie bitu SUID dla iptables,
tak aby zwykły użytkownik (w naszym
przypadku – demon Apache'a) mógł
wprowadzać zmiany w konfiguracji. Do
skryptu PHP będziemy zatem musieli
dodać kawałek kodu podobny do
<?php
exec(`iptables -A OUTPUT -d
10.0.0.X -j ALLOW`); ?>
(oczywiście
w miejsce X podstawiając adres IP
konkretnego klienta). Pomocny może być
skrypt przedstawiony na Listingu 4. Inną
metodą poradzenia sobie z kłopotem
jest np. wykonanie polecenia
arp –a
> /root/macs
i wczytanie zmiennych z
pliku do skryptu PHP. Listing 5 pokazuje,
jak to zrobić.
Pozostało nam teraz skonfigurowanie
DNS resolvera. Najłatwiej będzie
posłużyć się gotowym skryptem
Airsnarfa. Jest to prosty skrypt w
Pythonie, musimy podmienić w nim linię
20, by wyglądała tak:
my ($ttl, $rdata) = (3600,
"10.0.0.1");
Dobrze by było umieścić wszystkie nasze
pliki w jednym katalogu, np. /root/rogue_
ap. Gotowe źródła będą załączone
na płycie CD wraz z tym numerem
– dla wygody wszystkie komendy będą
umieszczone w jednym pliku startowym
opartym na
bash-dialog
. Skrypty
zostały przetestowane pod Debianem
oraz BackTrackiem w wersji trzeciej.
Dodatkowo przygotowałem przykład
prostej strony logowania, wyniki z każdej
próby powinny być zrzucane do pliku
/var/www/html/login_attempts.
Skoro już wszystko skonfigurowaliśmy,
możemy teraz przystąpić do ataku.
Wywołujemy skrypt
start.sh
i
uruchamiamy z niego potrzebne nam
usługi. Teraz pozostaje cierpliwie
czekać, dla własnej wygody możemy
odpalić sobie w nowej konsoli komendę
watch –n 1 „ cat /var/log/
messages | grep ath0
, gdzie
ath0
będzie nazwą naszego interfejsu. To
polecenie będzie pokazywać w czasie
rzeczywistym aktualny stan naszej karty
bezprzewodowej oraz każdą próbę
podłączenia. Alternatywnie możemy
wykorzystać program iptraf, ustawiając
go w trybie nasłuchiwania naszego
interfejsu sieciowego. Jeszcze innym
sposobem może być dodanie regułki
Rysunek 3.
Przykład bezpiecznej implementacji płatnego WIFI
����������
������
����������
������
����������������
������
������
�������
���
�������
��������
�������
������
�����
Rysunek 2.
Scenariusz wykorzystania Rogue AP
����������������������
����������
����������������
����������
��������������
������������������������
������
���������
���������������
��������
��������������������
���������������������
��������������
������������������������
������
���������
����������������
��������
����������������
���������������������
�������
����������������������
ATAK
40
HAKIN9 5/2009
41
HAKIN9
5/2009
DEFRAUDACJE Z UŻYCIEM ROGUE ACCES POINTS
do iptables, która spowoduje logowanie
całego ruchu do pliku, np. w ten sposób:
'iptables -t nat -A POSTROUTING
-s $i -m state --state NEW -j
LOG --log-level info --log-prefix
"Połączenie WLAN: ”'
. Dodatkowo,
jeśli chcielibyśmy zdobyć coś więcej
(choćby hasła logowania lub inne dane,
np. uwierzytelniające), możemy pokusić
się o logowanie całego ruchu do pliku
w celu późniejszej analizy. Można
to zrealizować np. dzięki narzędziu
tcpdump. Przykładowe polecenie
może wyglądać np. tak:
tcpdump -c
100000 -i ath0 -o log _ data.pcap
.
Parametr –c jest w tym przypadku
rozmiarem analizowanego pliku
(można go pominąć),
ath0
odnosi się
do odpowiedniego interfejsu WLAN,
a wartość parametru -o oznacza plik,
do którego będziemy zrzucać nasze
wyniki w formacie Wireshark. Celem
tego działania będzie późniejsza
dogłębna analiza zapisanego ruchu np
w programie Wireshark, który zostanie
opisany w jednym z kolejnych artykułów.
Jednym z ciekawszych przykładów
prania brudnych pieniędzy jest model
transgraniczny. Polega to na tym, że
haker np. w Wielkiej Brytanii kradnie
numery kart kredytowych poprzez
oszukańczy Access Point, następnie
wysyła te dane poprzez szyfrowany
kanał transmisji do innego przestępcy
(choćby w Rosji), ewentualnie
korzystając z rozbudowanych systemów
pośredniczących (proxy), wpłaca
ukradzione środki na konto Webmoney,
będące idealną maszyną do prania
brudnych pieniędzy. Alternatywnie
agresor może wykorzystać serwis
www.ikobo.com. W ten sposób
pieniądze transferowane są np. do
Polski, gdzie muły lub słupy, czyli ludzie
z marginesu społecznego, wypłacają
pieniądze za naprawdę drobną opłatą
i oddają je nowemu właścicielowi.
Proceder ten coraz częściej uprawiany
jest przez zorganizowane grupy
przestępcze, których struktura sięga
po krańce naszego kontynentu lub
nawet dalej. Jeszcze innym, ale mniej
skomplikowanym, podejściem może
być robienie bezpośrednich zakupów w
Internecie lub korzystanie z systemów
transferów płatności online.
Rysunek 4.
Airsnarf w praktyce
Analizując cały proces od strony
organów ścigania, najbardziej
krytycznymi czynnikami, utrudniającymi,
a wręcz uniemożliwiającymi
namierzenie przestępców, są czas oraz
transgraniczny charakter zdarzenia.
Często niemożliwym jest namierzenie
przestępców, o ile nie zostaną złapani
niemal natychmiast. To jednak
wiąże się z koniecznością szybkiego
złożenia doniesienia o kradzieży,
jednak statystyki pokazują, że średni
czas od kradzieży danych płatniczych
do złożenia doniesienia wynosi 16
godzin – to niestety w zupełności
wystarcza do spokojnego, wielokrotnego
przetransferowania ukradzionych
środków. Należy zauważyć, że takie
przestępstwa dokonywane są przez
coraz to młodsze osoby. Bazując na
analizie KGP, działania agresywne i
przestępcze podejmowane są przez
młodzież w wieku 14-16 lat, a już całkiem
wyrafinowane metody wykorzystywane
są przez osobników w wieku 17-25 lat.
Według raportu departamentu obrony
USA (DoD) liczba fałszywych transakcji
online, włączając te przeprowadzone
za pośrednictwem sieci Wi-Fi, maleje (z
3,6% dochodów online firm amerykański
w 2000 do 1,4% w 2007), jednakże dużo
ważniejszym parametrem jest suma
tych transakcji, która wzrosła z 1,5
biliona dolarów amerykańskich do aż 3,6
biliona.
Proceder obejmujący wszelkiego
rodzaju operacje mające zazwyczaj na
celu wprowadzenie do legalnego obrotu
wartości majątkowych, które pochodzą z
nielegalnych źródeł, z jasnych przyczyn
jest nielegalny. Dla przypomnienia
przytoczmy artykuł 267 kk, §1: Kto
bez uprawnienia uzyskuje dostęp do
informacji dla niego nieprzeznaczonej
[...] podłączając się do sieci
telekomunikacyjnej lub przełamując albo
omijając [...] jej zabezpieczenie, podlega
grzywnie, karze ograniczenia wolności
albo pozbawienia wolności do lat 2. Inne
paragrafy mające tu zastosowanie to:
oszustwo telekomunikacyjne (art. 285
kk) oraz oszustwo komputerowe (art.
287 kk). Dlatego apeluję do wszystkich o
rozsądek.
Jak dostawcy płatnych usług
bezprzewodowych mogą ochronić
swoich klientów? Aby uczynić
usługi bezprzewodowego Internetu
bezpieczniejszymi, niezbędnym jest
stworzenie bezpiecznych stref oraz
implementowanie bezpiecznych
algorytmów. Na pewno niezbędnym jest
wprowadzenie silnych mechanizmów
uwierzytelniających, które muszą zostać
zaimplementowane do obsługi procesu
płatności. Najprostszym przykładem
nieodpowiednio użytego mechanizmu
może być standard oparty na SSL1,
gdzie trudnością będzie nie tyle samo
złamanie protokołu, co jego podrobienie.
Dodatkowo należy wprowadzić politykę
haseł jednorazowych, w ramach której
użytkownik otrzymuje np. SMS-em
hasło uwierzytelniające (oprócz hasła
domyślnego). Dzięki temu użytkownik od
razu ma szanse wykryć nieprawidłowości
związane ze swoim kontem, np. przy
subskrypcjach. Powinny również zostać
zaimplementowane systemy detekcji
medium, w tym pojawianie się nowych
AP, ze szczególną uwagą na kanał,
nazwę ESSID oraz adres BSSID. Pozwoli
to szybko zaalarmować administratora
i w razie potrzeby wezwać policję na
miejsce zdarzenia, by ująć sprawcę na
gorącym uczynku.
Jeśli chodzi o możliwości obrony
przez samego użytkownika, tu zadanie
jest już dużo trudniejsze. Użytkownik,
który nie posiada adekwatnych
zdolności komputerowych, może
jedynie przyjrzeć się wyglądowi strony.
Często w sfałszowanych hotspotach
pewne elementy mogą się różnić od
oryginału – czy to w formie błędów
pisowni, czy to usterek w wyglądzie
strony. Innym istotnym elementem, na
który klient powinien zwrócić uwagę,
ATAK
42
HAKIN9 5/2009
jest sam proces płatności oraz
autoryzacji. Należy zdać sobie sprawę,
że proces komunikacji z bankiem trwa
zwykle około 20 - 30 sekund, zatem
jeśli od razu dostaniemy dostęp do
serwisu, powinno to od razu wzbudzić
nasz niepokój. Dodatkowo zawsze
powinniśmy otrzymać numer transakcji,
który będziemy mogli wykorzystać
w razie reklamacji usługi. Bardziej
zaawansowani użytkownicy powinni
wykonać proste skanowanie kanałowe,
np. przy pomocy Network Stumblera
lub Kismeta. Często też zdarza się,
że oprogramowanie dodane do
karty sieciowej umożliwia bardziej
szczegółowe skanowanie. Tym, co na
pewno powinno zwrócić naszą uwagę,
jest wykrycie dwóch nadajników z
tym samym SSID-em, czyli nazwą
rozgłoszeniową – najprawdopodobniej
na tym samym kanale, ale jednak
najczęściej różniących się BSSID-em
(czyli adresem MAC). Umiejętni hakerzy
mogą podmienić także i ten parametr,
a wtedy zostaje nam analiza bardziej
zaawansowanych parametrów, jak
np. różnice w interwałach wysyłania
beacon frames (karty sieciowe
w trybie SOFT_AP charakteryzują
się zwykle niższą wartością tego
parametru - <100ms). Kolejnym
badanym parametrem może być lista
obsługiwanych prędkości – zdarza
się, że karty sieciowe nie obsługują
wszystkich trybów. Inną zaawansowaną
metodą rozpoznawania może być
skanowanie usług po podłączeniu się
do sieci: w profesjonalnych AP prawie
nigdy nie stosuje się Linuksa jako punktu
końcowego, zatem wykrycie typowo
linuksowych usług w samym nadajniku
powinno nam dać do myślenia.
Podsumowanie
Wiele już zrobiono, by poprawić stan
bezpieczeństwa sieci bezprzewodowych.
Wprowadzono szyfrowanie WEP, potem
WPA, a teraz kuloodporne WPA2-AES,
jednak to wszystko jest tylko technologią.
To zawsze ludzie byli najsłabszym
czynnikiem wpływającym ujemnie na
bezpieczeństwo. Niestety, nawet dobra
edukacja na temat potencjalnych
zagrożeń nigdy nie wyeliminuje
całkowicie czynnika ludzkiego. Dlatego
niezbędnym wydaje mi się zbudowanie
takiej technologii, która skutecznie
ochroni użytkowników, a przynajmniej
zaalarmuje, że coś dzieje się nie tak.
Powietrze, jako ogólnodostępne medium,
zawsze będzie dawało dostęp wszystkim
– zarówno tym o dobrych, jak i o złych
zamiarach. Musimy wiec faktycznie
myśleć o wprowadzaniu rzeczywiście
bezpiecznych technologii lub o
całkowitej eliminacji płatności online za
pośrednictwem sieci bezprzewodowych.
Maciej Wiśniewski
Autor jest szefem działu informatyki śledczej w firmie
konsultingowej BTC Sp. z o.o. Od 4 lat specjalizuje się
w dziedzinie bezpieczeństwa sieci bezprzewodowych.
Na swoim koncie posiada doświadczenie wdrożeniowe
i audytowe. Autor jest twórcą narzędzia Wireless
Network Manager, które służy do zarządzania sieciami
bezprzewodowymi.
Kontakt z autorem: mwisniewski@btc.com.pl
Listing 1.
Przykładowa konfiguracja parametrów dostępowych
#!/bin/bash
# Skrypt startowy AP
ifconfig ath0 down
Ifconfig wifi0 down
wlanconfig ath0 destroy
wlanconfig ath0 create wlandev wifi0 wlanmode ap
ifconfig ath0 10.0.0.1 netmask 255.255.0.0
iwconfig ath0 essid „Płatny punkt dostępu”
iwconfig ath0 rate 54M
ifconfig ath0 up
Listing 2.
Przykład konfiguracji demona dhcpd
subnet 10.0.0.0 netmask 255.255.255.224
{
option routers 10.0.0.1;
option subnet-mask 255.255.255.254;
option domain-name
"xyz.com"
;
option domain-name-servers 10.0.0.1;
range dynamic-bootp 10.0.0.1 10.0.0.200;
default
-lease-
time
21600;
max
-lease-
time
43200;
}
Listing 3.
Przykład prostego routowania zapytań DNS
echo
-n
"Włączamy przekazywanie zapytań DNS"
echo
1
>
/proc/sys/net/ipv4/ip_forward
modprobe iptable_nat
iptables -F -t nat
iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 10.0.0.1
iptables -t nat -A OUTPUT -p udp --dport 53 -j DNAT --to 10.0.0.1
Listing 4.
Przykład pobrania aktywnych adresów MAC
<?
php
$ip
=
'10.0.0.X'
;
//adres klienta
$eth
=
'eth0'
;
// adres interfejsu sieciowego
exec
(
'/usr/sbin/arping -c 1 -I '
.
$eth
.
' '
.
$ip
.
' -f'
,
$answer
)
;
//wywołanie komendy arp
eregi
(
'([0-9a-z]{2}:[0-9a-z]{2}:[0-9a-z]{2}:[0-9a-z]{2}:[0-9a-z]{2}:[0-9a-z]{2})'
,
$ans
wer
[
1
]
,
$result
)
;
echo
(
'Adres MAC : '
.
$result
[
0
])
;
?>
Listing 5.
Przykład pobrania zawartości tablicy ARP
<?
php
exec
(
'/sbin/ip n s | awk '
{
$1
,
$5
}
' |grep -w $1 |awk '
{
$2
}
'’
)
;
$arpfile
=
"/home/users/www/arp"
;
// lokalizacja pliku
$fip
= getenv
(
$ip
)
;
exec
(
"
$arpfile
$fip
"
,
$idcard
)
;
$card
=
strtoupper
(
$idcard
[
0
])
;
?>