Strony

sobota, 19 listopada 2011

OpenWRT (Backfire) + lighttpd + PHP5 + AUTH + SSL

Instalacja i konfiguracja lighttpd i php z autoryzacją typu digest (htdigest)

UPDATE: 2013-01-15

W skrócie:
Konfiguracja lighttpd wraz z php5, autoryzacją na poziomie serwera www oraz przekierowaniem wybranych katalogów z http na https, a po co ? A po to, żeby bezpiecznie się autoryzować.
Sprzęt:
TP-LINK TL-WR1043ND, alternatywny firmware ze strony http://eko.one.pl, OpenWrt Backfire 10.03.1-RC6 r28934 2011-11-12, skonfigurowany extroot 2GB

1. Instalacja i konfiguracja lighthttp
2. Instalacja i konfiguracja php
3. Włączenie https w lighttpd
4. Autoryzacja w lighttpd
5. Redirect z http na https
6. Firewall
7. Literatura



1. Instalacja i konfiguracja lighthttp
Instalujemy serwer
opkg update
opkg install lighttpd
Modyfikujemy plik konfiguracyjny
#/etc/lighttpd/lighttpd.conf
server.document-root = "/www"
Startujemy serwer i sprawdzamy czy działa
/etc/init.d/lighttpd start
Następnie stopujemy serwer WWW
/etc/init.d/lighttpd stop

2. Instalacja i konfiguracja php
Instalujemy php i moduł do lighttpd
opkg update
opkg install lighttpd-mod-cgi
opkg install php5-cgi
Aby interpreter php pracował poprawnie w pliku konfiguracyjnym /etc/php.ini zmienna doc_root powinna być skonfigurowana identycznie jak zmienna server.document-root w konfiguracji lighttpd
#/etc/php.ini
doc_root = "/www"
Konfiguracja lighttpd
#/etc/lighttpd/lighttpd.conf
server.modules = (
...
        "mod_cgi",
...
)
cgi.assign = ( ".php"  => "/usr/bin/php-cgi" )
index-file.names = ( "index.html", "default.html", "index.htm", "default.htm", "index.php")
Tworzymy plik php i sprawdzamy czy działa
echo "<#? PHP phpinfo(); ?#>" >> /www/index.php
# - usuń to - blogger parsuje kod

Aby interpretować skrypty sh dodajemy:
cgi.assign = ( ".sh"  => "/bin/sh" )

3. Włączenie https w lighttpd
Instalujemy openssl i generujemy certyfikat typu self-sign
opkg update
opkg install openssl-util
cd /etc/lighttpd/
openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes
chown root:root server.pem
chmod 400 server.pem

Włączenie SSL można wykonać ją na 2 sposoby:

a. Za pomocą poniższej konfiguracji lighthttp przełączy się w tryb SSL-only, oznacza to, że będzie nasłuchiwał tylko i wyłącznie na porcie 443.
#/etc/lighttpd/lighttpd.conf
ssl.engine = "enable"
ssl.pemfile = "/etc/lighttpd/server.pem"

W dokumentacji jest napisane, ze prawdopodobnie trzeba będzie również zmienić server.port na 443, nic podobnego, w OpenWRT (lighttpd/1.4.28 (ssl)) serwer automatycznie zabindował się do portu 443

b. Aby włączyć SSL obok normalnego HTTP czyli równolegle serwować tą samą stronę po http i https,  należy dodać socket do konfiga.
$SERVER["socket"] == ":443" {
     ssl.engine                  = "enable"
     ssl.pemfile                 = "/etc/lighttpd/server.pem"
 }
4. Autoryzacja w lighttpd
Instalacja modułu AUTH
opkg update
opkg install lighttpd-mod-auth

Włączamy moduł auth
#/etc/lighttpd/lighttpd.conf
server.modules = (
...
        "mod_auth",
...
)

## debugging
# 0 for off, 1 for 'auth-ok' messages, 2 for verbose debugging
auth.debug = 2

# definiujemy metodę autoryzacji

auth.backend = "htdigest"

# wskazujemy plik z loginami i haslami
auth.backend.htdigest.userfile = "/etc/lighttpd/lighttpd-htdigest.user"

#definiujemy gdzie obowiązuje autoryzacja: czyli katalog download, użytkownicy muszą zostać autoryzowani metodą digest, lecz zostaną wpuszczeni tylko ci, którzy należą do strefy "download area"
auth.require = ("/download/" =>
  (
     "method"  => "digest",
     "realm"   => "download area",
     "require" => "valid-user"
  )
)

Tworzymy prosty skrypt dodający użytkowników do pliku o nazwie htdigest.sh
#!/bin/sh
user=$1
realm=$2
pass=$3
hash=`echo -n "$user:$realm:$pass" | md5sum | cut -b -32`
echo "$user:$realm:$hash"

#nadajemy prawa do wykonywania
chmod 755 htdigest.sh

#przykład użycia:
#./htdigest.sh[space]'login'[space]'realm'[space]'password'
./htdigest.sh 'piotr' 'download area' 'password' >>/etc/lighttpd/lighttpd-htdigest.user
5. Redirect z http na https
Instalacja modu REDIRECT
opkg update
opkg install lighttpd-mod-redirect
Włączamy moduł redirect i ustawiamy, aby podczas próby wejścia do katalogu download nastąpiło przekierowanie na ten sam adres lecz po protokole https
#/etc/lighttpd/lighttpd.conf
server.modules = (
...
       "mod_redirect",
...
)

#poniższy kod sprawi, że zostaniemy przekierowani z  adresu http://serwerip/download/ na https://serwerip/download/

$SERVER["socket"] == ":80" {
        $HTTP["url"] =~ "^/download/*" {
                $HTTP["host"] =~ "(.*)" {
                        url.redirect = ( "^/(.*)" => "https://%1/$1" )
                }
        }
}

Jeśli chcemy przekierować wszystko z portu 80 na 443
$SERVER["socket"] == ":80" {
    $HTTP["host"] =~ "(.*)" {
        url.redirect = ( "^/(.*)" => "https://%1/$1" )
    }
}

6. Firewall
Na koniec wypuszczenie serwera w eter, odblokowanie portu 443 lub/i 80 na firewallu na interfejsie WAN
#/etc/config/firewall

config rule
        option src              wan
        option proto            tcp
        option dest_port        443
        option target           ACCEPT

config rule
        option src              wan
        option proto            tcp
        option dest_port        80
        option target           ACCEPT


/etc/init.d/firewall restart

7. Literatura
http://eko.one.pl/?p=openwrt-php
http://eko.one.pl/?p=openwrt-http
http://redmine.lighttpd.net/wiki/lighttpd/Docs:SSL
http://redmine.lighttpd.net/wiki/lighttpd/HowToSimpleSSL
http://redmine.lighttpd.net/wiki/lighttpd/Docs:ModAuth
http://redmine.lighttpd.net/wiki/lighttpd/HowToAuthenticationFromMultipleFiles
https://wiki.archlinux.org/index.php/Lighttpd_for_SSL_and_non-SSL
http://redmine.lighttpd.net/wiki/lighttpd/TutorialLighttpdAndPHP
http://redmine.lighttpd.net/wiki/lighttpd/HowToRedirectHttpToHttps
http://redmine.lighttpd.net/wiki/lighttpd/HowToRedirectWww

czwartek, 17 listopada 2011

OpenWRT (Backfire) + lighttpd + php5 + DokuWiki

Po podstawowej konfiguracji lighttpd + php5 pobrałem stabilną wersję DokuWiki (www.dokuwiki.org)
cd /tmp
wget http://www.splitbrain.org/_media/projects/dokuwiki/dokuwiki-2011-05-25a.tgz
gzip -d dokuwiki-2011-05-25a.tgz
tar -xvf dokuwiki-2011-05-25a.tar
mv dokuwiki-2011-05-25a /home/lighttpd/ssl/html/
Przy próbie instalacji aplikacji
http://server/dokuwiki/install.php
otrzymałem błąd:
The installer found some problems, indicated below. You can not continue until you have fixed them.

    * PHP function session_start is not available. Maybe your hosting provider disabled it for some reason?
    * PHP function utf8_encode is not available. Maybe your hosting provider disabled it for some reason?
    * PHP function utf8_decode is not available. Maybe your hosting provider disabled it for some reason?

Rozwiązaniem było doinstalowanie modułów php:
opkg update
opkg install php5-mod-session
opkg install php5-mod-xml

Nie ma potrzeby ingerencji w plik konfiguracyjny /etc/php.ini
ponieważ po instalacji w lokalizacji /etc/php5/ tworzą się odpowiednie pliki konfiguracyjne .ini
root@server:~$ cat /etc/php5/session.ini
extension=session.so

wtorek, 11 października 2011

VBScript - skrypty AD

1. Wyszukiwanie użytkownika w AD i listowanie jego atrybutów.

'SearchforaUserAccountinActiveDirectory

FilePath=".\samAccountName.txt"'Sciezkadoplikuzdanymiwejściowymi (np. JanKowalski)
SetobjFSO=CreateObject("Scripting.FileSystemObject")
SetobjFile=objFSO.OpenTextFile(FilePath,1)

DoUntilobjFile.AtEndOfStream
    strsamAccountName=objFile.ReadLine()

SetobjConnection=CreateObject("ADODB.Connection")
objConnection.Open"Provider=ADsDSOObject;"

SetobjCommand=CreateObject("ADODB.Command")
objCommand.ActiveConnection=objConnection

objCommand.CommandText=_
"<[*]LDAP://dc=domain,dc=com,dc=pl>;(&(objectCategory=User)"&_
"(samAccountName="&strsamAccountName&"));adspath;subtree"


SetobjRecordSet=objCommand.Execute

IfobjRecordset.RecordCount=0Then
    'WScript.Echo"sAMAccountName:" & strsamAccountName & "doesnotexist."
Else  
    WhileNotobjRecordset.EOF
        SetobjUser=GetObject(objRecordset.Fields(0).Value)
        WScript.EchoobjRecordset.RecordCount & "|" & objUser.samAccountName & "|" & objUser.mail
        objRecordSet.MoveNext
    Wend
EndIf
objConnection.Close
Loop
[*] - usuń te znaki (Blogger filtruje publikowane treści)

wtorek, 6 września 2011

AdFind - przykłady

Command line Active Directory query tool. Mixture of ldapsearch, search.vbs, ldp, dsquery, and dsget tools with a ton of other cool features thrown in for good measure.

http://www.joeware.net/freetools/tools/adfind/

1. Wyświetla wszystkich użytkowników w grupie "GroupName", rekurencyjnie (odczytuje zawartość innych grup zawierających się w grupie "GroupName").

"-samdc" - rozwiązuje min parametr userAccountControl do postaci: "546 [DISABLED(2)\;PWD_NOT_REQ(32)\;NORMAL_USER(512)]".

"-csvdelim ; " - rozdziela dane średnikiem ";" (standardowo to przecinek ","), ten parametr umożliwi poprawną obróbkę danych, szczególnie ważne gdy exportujemy równieź dn, którego zawartość posiada przecinki: "OU=Groups,DC=domain,DC=com" 
adfind -b "DC=domain,DC=com" -s subtree -f "(&(objectclass=user)(memberOf=CN=GroupName,OU=Groups,DC=domain,DC=com))" -samdc -csv -csvdelim ; sAMAccountName userAccountControl displayName givenName sn description title employeeNumber department departmentNumber company streetAddress l st postalCode physicalDeliveryOffice co telephoneNumber mobile mail manager
CDN..

środa, 20 lipca 2011

WSUS Offline Update - zawsze świeże poprawki

WSUS Offline Update - http://www.wsusoffline.net/
To bardzo przydatne narzędzie, które pozwoli na pobranie wszystkich niezbędnych poprawek dla systemów Microsoft, zapisanie ich w pliku ISO, oraz w trybie offline (bez dostępu do Internetu) zainstalowanie ich na naszej maszynie.
Oprogramowanie udostępnia GUI za pomocą, którego możemy wybrać interesujący nas system Windows oraz pakiet MS Office do którego chcemy pobrać dodatki, a także utworzyć pliki ISO z poprawkami.



Z powyższego GUI skorzystamy za każdym razem jeśli będziemy chcieli  dokonać aktualizacji.

Microsoft publikuje poprawki do swoich systemów w drugi wtorek każdego miesiąca.
Jeśli chcemy mieć zawsze świeże poprawki, możemy zautomatyzować cały proces pobierania i tworzenia plików ISO za pomocą skryptu.

Skrypt pobiera poprawki:
Poprawki do systemów operacyjny Microsoft:
  • Windows XP PL x86
  • Windows 2003 EN x86
  • Windows 2003 EN x64
  • Windows 2008 x86
  • Windows 2008 x64
  • Windows Vista x86
  • Windows Vista x64
  • Windows 2008 R2
  • Windows 7 x86
  • Windows 7 x64
Poprawki do pakietu Microsoft Office
  • MS Office XP,  2003, 2007, 2010 PL

@echo off

call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd wxp plk /includedotnet /verify /exitonerror
call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd w2k3 enu /includedotnet /verify /exitonerror
call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd w2k3-x64 enu /includedotnet /verify /exitonerror
call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd w60 glb /includedotnet /verify /exitonerror
call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd w60-x64 glb /includedotnet /verify /exitonerror
call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd w61 glb /includedotnet /verify /exitonerror
call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd w61-x64 glb /includedotnet /verify /exitonerror
call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd ofc glb /includedotnet /verify /exitonerror
call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd o2k3 plk /includedotnet /verify /exitonerror
call d:\Download\wsusoffline\cmd\DownloadUpdates.cmd o2k7 plk /includedotnet /verify /exitonerror

call d:\Download\wsusoffline\cmd\CreateISOImage.cmd wxp plk
call d:\Download\wsusoffline\cmd\CreateISOImage.cmd w2k3 enu
call d:\Download\wsusoffline\cmd\CreateISOImage.cmd w2k3-x64 enu
call d:\Download\wsusoffline\cmd\CreateISOImage.cmd w60 glb
call d:\Download\wsusoffline\cmd\CreateISOImage.cmd w60-x64 glb
call d:\Download\wsusoffline\cmd\CreateISOImage.cmd w61 glb
call d:\Download\wsusoffline\cmd\CreateISOImage.cmd w61-x64 glb
call d:\Download\wsusoffline\cmd\CreateISOImage.cmd ofc plk
Skrypt konfigurujemy tak, aby uruchamiał się cyklicznie: w moim przypadku druga środa każdego miesiąca o 4:00 rano.


Po zakończeniu pobierania poprawek, tworzone są obrazy ISO z poprawkami dla konkretnych systemów i pakietów office w katalogu wsusoffline\iso\

piątek, 27 maja 2011

Reanimacja TP-LINK TL-WR1043ND

UPDATE: 2013-05-23

Wczoraj popełniłem sromotny błąd...
Postanowiłem zrobić szybki upgrade firmware.
Upgrade przez mtd po wifi ale w screenie.
I niestety nie udało się.
Możliwe że błąd tkwił w tym, że obraz znajdował się na zewnętrznym hdd a nie w /tmp

Objawy po włączeniu zasilania:
  1. zapala się kontrolka PWR
  2. następnie zapalają się wszystkie kontrolki na 1s
  3. po chwili test kontrolek shwitch'a 1s i cisza
  4. ostatecznie świeci się tylko PWR
  5. brak jest jakiejkolwiek komunikacji sieciowej

Próbowałem na wszelkie sposoby uruchomić failsafe, lecz bez skutku.

Dziś zakupię kabelek NOKIA CA-42

Kilka źródeł z których zamierzam skorzystać podczas próby ratowania routera:
  • http://eko.one.pl/?p=openwrt-wr1043nd
  • http://dar3kg.blogspot.com/2010/06/naprawa-tp-link-wr1043nd.html
  • http://www.dd-wrt.com/phpBB2/viewtopic.php?p=450379&sid=13bb89f8e96dd7ebc155415a26f8cab0
  • http://wiki.openwrt.org/toh/tp-link/tl-wr1043nd#opening.the.case
  • http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1261313468/0
Update


Ostatecznie skończyło się na zakupie kabla DKU-5 (15 zł), który jest starszą wersją CA-42.



Sterowniki znajdowały się da dołączonej płycie, kompatybilne z Win XP x86.

Na początku testy przeprowadziłem na maszynie wirtualnej (VMware) lecz komunikacja działała tylko w jedną stronę (brak reakcji na wprowadzanie danych w terminalu).

Przy okazji reanimacji routera dla Otziego okazało się, że wszystko działa na maszynie wirtualnej

Do reanimacji TL-WR1043ND użyłem laptopa Dell D400 z OS Win XP x86.

Przygotowanie przewodu:

Czarny:    GND (8)
Biały:     Rx  (6)
Niebieski: Tx  (7)



Nie wlutowywałem pinów w płytę główną, po prostu za pomocą lutownicy i wykałaczki usunąłem cynę i zrobiłem otwory.


Ciekawym rozwiązaniem jest: Easy Access Mini-Stereo Port

Całość podpiąłem za pomocą ścisku.


Instalujemy sterowniki do kabla i sprawdzamy nr portu COM w menadżerze urządzeń

Konfigurujemy Putty
Podpinamy zasilanie i łączymy się do routera.


U-Boot 1.1.4 (Feb  1 2010 - 10:11:24)

AP83 (ar9100) U-boot 0.0.11
DRAM:
sri
32 MB
id read 0x100000ff
flash size 8MB, sector count = 128
Flash:  8 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   ag7100_enet_initialize...
No valid address in Flash. Using fixed address
: cfg1 0xf cfg2 0x7114
eth0: 00:03:7f:09:0b:ad
eth0 up
eth0
Autobooting in 1 seconds## Booting image at bf020000 ...
   Uncompressing Kernel Image ... OK

Starting kernel ...

Linux version 2.6.32.27 (cezary@eko.one.pl) (gcc version 4.3.3 (GCC) ) #18 Fri May 20 18:42:50 CEST 2011
bootconsole [early0] enabled
CPU revision is: 00019374 (MIPS 24Kc)
Atheros AR9132 rev 2, CPU:400.000 MHz, AHB:200.000 MHz, DDR:400.000 MHz
Determined physical RAM map:
 memory: 02000000 @ 00000000 (usable)
Initrd not found or empc2fc
[<801370e0>] 0x801370e0
[<801371b0>] 0x801371b0
[<800e4ed0>] 0x800e4ed0
[<800e4fcc>] 0x800e4fcc
[<800fd654>] 0x800fd654
[<800fd76c>] 0x800fd76c
[<800ef280>] 0x800ef280
[<802eccc4>] 0x802eccc4
[<801b80b4>] 0x801b80b4
[<802ed0c4>] 0x802ed0c4
[<800b5150>] 0x800b5150
[<802ec388>] 0x802ec388
[<8006d754>] 0x8006d754
[<802ec26c>] 0x802ec26c
[<8006d744>] 0x8006d744

---[ end trace 8b6952b74c4407b5 ]---
VFS: Cannot open root device "" or unknown-block(31,2)
Please append a correct "root=" boot option; here are the available partitions:
1f00             128 mtdblock0 (driver?)
1f01            1280 mtdblock1 (driver?)
1f02            6720 mtdblock2 (driver?)
1f03            3904 mtdblock3 (driver?)
1f04              64 mtdblock4 (driver?)
1f05            8000 mtdblock5 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,2)

XXX
Dalej postępowałem analogicznie według opisu na blogu:
http://dar3kg.blogspot.com/2010/06/naprawa-tp-link-wr1043nd.html




    czwartek, 5 maja 2011

    GPS over TCP/IP via USB

    Współdzielenie odbiornika GPS wbudowanego w telefon HTC Touch Pro / Windows Mobile 6.5 z PC / Windows 7 za pomocą USB

    Instalacja i konfiguracja:

    Przed przystąpieniem do instalacji należy podłączyć telefon za pomocą ActiveSync.
    Upewnić się, że na PDA zainstalowany jest co najmniej .NET Compact Framework 2.0
    Obecność framework'a możemy sprawdzić za pomocą aplikacji \Windows\cgacutil.exe
    W moim przypadku jest to .Net 3.5


    Na telefonie instalujemy aplikację GPS2Blue
    Wybieramy port COM na którym skonfigurowany jest odbiornik GPS w telefonie w moim przypadku jest to COM4 (HTC Touch Pro) oraz prędkość: tutaj 4800, zaznaczamy TCP/IP (BT powinno być nie zaznaczone)


    Przechodzimy do instalacji oprogramowania na PC:
    Instalujemy HW Virtual Serial Port na komputerze.
    Do Naszych celów wystarczy program obsługujący jeden port COM (HW VSP Singleport)

    Podczas instalacji w oknie "Select Components" wybieramy Standalone Application


    Osobiście zaobserwowałem problem podczas instalacji tego oprogramowania na Windows 7
    Mianowicie instalacja zawiesiła się na jednej operacji, którą była rejestracja jednej z bibliotek tej aplikacji.
    Rozwiązanie: "Ubicie" procesu RegVSP.exe odpowiedzialnego za rejestrację biblioteki VSPort.dll


    i wykonanie polecenia osobno na uprawnieniach administratora czyli:
    Windows 7 x64

    "C:\Program Files (x86)\HW group\HW VSP3s\RegVSP.exe" /s /i:"HW group s.r.o.#000GNU-F1MPKC-WN5Y9K-C2MK2Y-5RPRAC-4CR23U-DC649F-0BE50E-A120FD-9AA5EE-A43D2C-A069D5" VSPort.dll

    Windows 7 x86 Windows XP

    "C:\Program Files\HW group\HW VSP3s\RegVSP.exe" /s /i:"HW group s.r.o.#000GNU-F1MPKC-WN5Y9K-C2MK2Y-5RPRAC-4CR23U-DC649F-0BE50E-A120FD-9AA5EE-A43D2C-A069D5" VSPort.dll
    Konfiguracja HW Virtual Serial Port wygląda następująco:

    W zakładce "Settings"
    zaznaczamy TCP Server Mode
    odznaczamy NVT Enable


    W zakładce "Virtual Serial Port"
    Wybieramy wolny port COM u mnie COM9
    oraz adres nasłuchiwania 0.0.0.0 oznacza wszystkie interfejsy w PC
    port: 31873


    Uruchomienie:
    NA PC w HW Virtual Serial Port tworzymy COM "Create COM"
    NA PPC w GPS2Blue uruchamiamy transmisję GPS over TCP/IP "On"

    Po nawiązaniu komunikacji będą rosły liczniki:
    w HW Virtual Serial Port licznik Rx
    w GPS2Blue licznik Bytes



    Podsumowanie:
    Tak skonfigurowane urządzenia można wykorzystać np.: do wardriving'u przy współpracy z aplikacjami takimi jak Kismet, NetStumbler, inSSIDer, lub po prostu do nawigacji z AutoMapą.

    Ponadto samo rozwiązanie połączenia PDA do komputera za pomocą USB można zastąpić poprzez BT (Bluetooth) lub WiFI (w końcu jest to GPS over TCP/IP).

    Źródła:
    http://users.skynet.be/hofinger/GPS2BlueFAQ.html
    http://www.hw-group.com/products/hw_vsp/index_en.html
    http://www.gpspassion.com/forumsen/topic.asp?TOPIC_ID=56979&whichpage=2#365580
    http://oldsap.blogspot.com/2009/07/gps2blue.html

    czwartek, 14 kwietnia 2011

    Próba włamania do TL-WR1043N z OpenWRT Backfire

    Próba miała na celu analizę logów z routera zebranych podczas próby ataku na sieć WiFi.

    Do testów użyto:
    • Router TP-Link TL-WR1043ND z alternatywnym firmware OpenWRT Backfire 10.03.1-rc4 [AP:AP:AP:AP:AP:AP]
    • Klient podłączony do AP [C1:C1:C1:C1:C1:C1]
    • WLAN 11g USB Adapter – Chipsert ZyDAS ZD1211B – [C2:C2:C2:C2:C2:C2]
    • System operacyjny BackTrack 4 R2

    Konfiguracja TL-WR1043ND
    Dystrybucja: OpenWRT Backfire 10.03.1-rc4
    Kompilacja: 2011-02-26 - r25718

    root@server:~# uname -a
    Linux server 2.6.32.27 #7 Sat Feb 26 15:25:42 CET 2011 mips GNU/Linux

    Wykonane testy:

    TEST 1. Injection test
    (http://www.aircrack-ng.org/doku.php?id=injection_test)

    root@bt:~# aireplay-ng -9 -a AP:AP:AP:AP:AP:AP -e test -B mon0

    13:51:22 Waiting for beacon frame (BSSID: AP:AP:AP:AP:AP:AP) on channel 5
    13:51:22 Trying broadcast probe requests...
    13:51:22 Injection is working!
    13:51:24 Found 1 AP

    13:51:24 Trying directed probe requests...
    13:51:24 AP:AP:AP:AP:AP:AP - channel: 5 - 'test'
    13:51:25 Ping (min/avg/max): 8.055ms/22.076ms/138.223ms Power: -50.72
    13:51:25 29/30: 96%

    13:51:25 Trying directed probe requests for all bitrates...

    13:51:25 AP:AP:AP:AP:AP:AP - channel: 5 - 'test'
    13:51:28 Probing at 1.0 Mbps: 13/30: 43%
    13:51:29 Probing at 2.0 Mbps: 23/30: 76%
    13:51:31 Probing at 5.5 Mbps: 23/30: 76%
    13:51:32 Probing at 6.0 Mbps: 24/30: 80%
    13:51:33 Probing at 9.0 Mbps: 22/30: 73%
    13:51:34 Probing at 11.0 Mbps: 24/30: 80%
    13:51:35 Probing at 12.0 Mbps: 23/30: 76%
    13:51:36 Probing at 18.0 Mbps: 26/30: 86%
    13:51:37 Probing at 24.0 Mbps: 24/30: 80%
    13:51:38 Probing at 36.0 Mbps: 24/30: 80%
    13:51:39 Probing at 48.0 Mbps: 24/30: 80%
    13:51:40 Probing at 54.0 Mbps: 26/30: 86%

    Logi AP
    Apr 13 19:51:27 hostapd: wlan0: STA 00:ad:81:0d:12:57 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:33:9d:9e:04:c0 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:42:51:e9:95:6d IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:64:ad:5c:24:66 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:be:04:79:ef:c9 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:a1:76:b1:77:6f IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:e0:24:f1:ed:37 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:94:29:77:7d:be IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:d4:ec:65:85:63 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:bf:0e:74:93:f4 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:8e:19:34:99:63 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:22:6d:4f:87:f2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:b3:5c:58:3b:21 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:ab:fa:2f:1f:8d IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:5b:1d:bd:e2:65 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:f2:70:7e:26:09 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:e1:49:76:31:d0 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:69:e4:2c:c1:1f IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:a6:a1:43:5c:e3 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:0c:b7:00:ca:99 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:51:27 hostapd: wlan0: STA 00:65:bc:0a:e3:e3 IEEE 802.11: did not acknowledge authentication response
    Apr 13 19:56:28 hostapd: wlan0: STA 00:ad:81:0d:12:57 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:33:9d:9e:04:c0 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:42:51:e9:95:6d IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:64:ad:5c:24:66 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:be:04:79:ef:c9 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:a1:76:b1:77:6f IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:e0:24:f1:ed:37 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:94:29:77:7d:be IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:d4:ec:65:85:63 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:bf:0e:74:93:f4 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:8e:19:34:99:63 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:22:6d:4f:87:f2 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:b3:5c:58:3b:21 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:ab:fa:2f:1f:8d IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:5b:1d:bd:e2:65 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:f2:70:7e:26:09 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:e1:49:76:31:d0 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:69:e4:2c:c1:1f IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:a6:a1:43:5c:e3 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:0c:b7:00:ca:99 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:28 hostapd: wlan0: STA 00:65:bc:0a:e3:e3 IEEE 802.11: disassociated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:ad:81:0d:12:57 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:33:9d:9e:04:c0 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:42:51:e9:95:6d IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:64:ad:5c:24:66 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:be:04:79:ef:c9 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:a1:76:b1:77:6f IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:e0:24:f1:ed:37 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:94:29:77:7d:be IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:d4:ec:65:85:63 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:bf:0e:74:93:f4 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:8e:19:34:99:63 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:22:6d:4f:87:f2 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:b3:5c:58:3b:21 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:ab:fa:2f:1f:8d IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:5b:1d:bd:e2:65 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:f2:70:7e:26:09 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:e1:49:76:31:d0 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:69:e4:2c:c1:1f IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:a6:a1:43:5c:e3 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:0c:b7:00:ca:99 IEEE 802.11: deauthenticated due to inactivity
    Apr 13 19:56:29 hostapd: wlan0: STA 00:65:bc:0a:e3:e3 IEEE 802.11: deauthenticated due to inactivity

    TEST 2. Fake authentication
    (http://www.aircrack-ng.org/doku.php?id=fake_authentication)

    root@bt:~# aireplay-ng -1 0 -e test -a AP:AP:AP:AP:AP:AP -h C2:C2:C2:C2:C2:C2 mon0
    Logi AP
    Apr 13 20:38:09 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:09 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:12 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:12 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:15 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:15 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:18 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: authenticated
    Apr 13 20:38:18 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:21 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:21 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:24 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:24 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:27 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:27 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:30 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:30 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:33 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:33 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:36 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:36 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:39 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:39 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:42 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:42 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:45 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:45 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    Apr 13 20:38:48 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: No WPA/RSN IE in association request
    Apr 13 20:38:48 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: did not acknowledge authentication response
    ...
    Apr 13 20:43:10 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: disassociated due to inactivity
    Apr 13 20:43:11 hostapd: wlan0: STA C2:C2:C2:C2:C2:C2 IEEE 802.11: deauthenticated due to inactivity

    TEST 3. Capturing
    (http://www.aircrack-ng.org/doku.php?id=airodump-ng)

    root@bt:~# airodump-ng -c 5 --bssid AP:AP:AP:AP:AP:AP -w test mon0
    Logi AP
    Brak

    TEST 4. Deauthentication
    (http://www.aircrack-ng.org/doku.php?id=deauthentication)

    root@bt:~# aireplay-ng -0 2 -a AP:AP:AP:AP:AP:AP -c C1:C1:C1:C1:C1:C1 mon0

    15:44:21 Waiting for beacon frame (BSSID: AP:AP:AP:AP:AP:AP) on channel 5
    15:44:22 Sending 64 directed DeAuth. STMAC: [C1:C1:C1:C1:C1:C1] [87|107 ACKs]
    15:44:22 Sending 64 directed DeAuth. STMAC: [C1:C1:C1:C1:C1:C1] [ 0|63 ACKs]
    Logi AP
    Apr 13 21:44:22 hostapd: wlan0: STA C1:C1:C1:C1:C1:C1 IEEE 802.11: authenticated
    Apr 13 21:44:22 hostapd: wlan0: STA C1:C1:C1:C1:C1:C1 IEEE 802.11: associated (aid 1)
    Apr 13 21:44:22 hostapd: wlan0: STA C1:C1:C1:C1:C1:C1 WPA: pairwise key handshake completed (RSN)
    Apr 13 21:44:22 dnsmasq-dhcp[1364]: DHCPREQUEST(br-lan) 10.0.0.10 C1:C1:C1:C1:C1:C
    Apr 13 21:44:22 dnsmasq-dhcp[1364]: DHCPACK(br-lan) 10.0.0.10

    piątek, 4 marca 2011

    Szyfrowanie dysków za pomocą BitLocker

    Szyfrowanie woluminu I: z wykorzystaniem klucza zewnętrznego zapisanego w lokalizacji D:

    Szyfrowanie woluminu
    manage-bde -on I: -RecoveryKey D: -RecoveryPassword

    Szyfrowanie dysków funkcją BitLocker: Narzędzie konfiguracji, wersja 6.1.7600
    Copyright (C) Microsoft Corporation. Wszelkie prawa zastrzeżone.

    Wolumin I: [BitLocker]
    [Wolumin danych]
    Dodane funkcje ochrony kluczy:

    Zapisano w katalogu D:

    Klucz zewnętrzny:
    Identyfikator: {955077F8-867C-4E5E-B71F-B36E7B51E897}
    Nazwa pliku klucza zewnętrznego:
    955077F8-867C-4E5E-B71F-B36E7B51E897.BEK

    Hasło numeryczne:
    Identyfikator: {0EA47282-2BBF-4118-8F9A-2F3239E1E2B9}
    Hasło:
    287870-518122-457908-106700-247478-610610-544797-491700

    WYMAGANE AKCJE:

    1. Zapisz to numeryczne hasło odzyskiwania i przechowuj je
    w bezpiecznej lokalizacji z dala od komputera:

    287870-518122-457908-106700-247478-610610-544797-491700

    Aby zapobiec utracie danych, niezwłocznie zapisz to hasło. Hasło zwiększa
    pewność, że będzie można odblokować zaszyfrowany wolumin.

    Szyfrowanie jest w toku.

    Weryfikacja statusu:
    manage-bde -status I:

    Szyfrowanie dysków funkcją BitLocker: Narzędzie konfiguracji, wersja 6.1.7600
    Copyright (C) Microsoft Corporation. Wszelkie prawa zastrzeżone.

    Wolumin I: [Nieznana etykieta]
    [Wolumin danych]

    Rozmiar: Nieznany GB
    Wersja funkcji BitLocker: Windows 7
    Stan konwersji: Nieznany
    Procent zaszyfrowania: Nieznany%
    Metoda szyfrowania: AES 128 z rozpraszaniem
    Stan ochrony: Nieznany
    Stan blokowania: Zablokowane
    Pole identyfikacji: Nieznany
    Automatyczne odblokowywanie: Wyłączony
    Funkcje ochrony kluczy:
    Klucz zewnętrzny
    Hasło numeryczne

    W lokalizacji d:\ został utworzony klucz zewnętrzny
    d:\955077F8-867C-4E5E-B71F-B36E7B51E897.BEK

    który będzie używany do odblokowania woluminu.
    Przenosimy go na pendrive ! Zmieniamy nazwę ! (wcześniej robimy kopię)

    Komendy CMD:

    Lokowanie woluminu I: z wymuszeniem
    manage-bde -lock I: -ForceDismount

    Odblokowanie woluminu I: na podstawie klucza
    manage-bde -unlock I: -RecoveryKey D:\I_klucz.BEK

    Skrypty należy uruchomić z uprawnieniami administratora.

    Źródło:
    http://sourcedaddy.com/windows-7/how-to-manage-bitlocker-from-command-line.html
    http://technet.microsoft.com/en-us/library/ff829849%28WS.10%29.aspx

    środa, 2 marca 2011

    Szyfrowanie plików za pomocą EFS w windows

    Odszyfruj
    cipher /d /h /i /a /s:./

    Zaszyfruj
    cipher /e /h /i /a /s:./

    /D Odszyfrowuje określone katalogi. Katalogi zostaną oznaczone,
    aby pliki dodane później nie były szyfrowane.

    /E Szyfruje określone katalogi. Katalogi zostaną oznaczone, aby pliki dodane później były szyfrowane.

    /H Wyświetla pliki z atrybutem ukryty lub systemowy. Te pliki są domyślnie pomijane.

    /I Kontynuuje wykonywanie określonej operacji nawet po wystąpieniu błędów. Domyślnie polecenie CIPHER zatrzymuje pracę, gdy pojawi się błąd.

    /A Działa zarówno na plikach, jak i na katalogach. Zaszyfrowany plik może zostać odszyfrowany, gdy jest modyfikowany, a katalog nadrzędny nie jest szyfrowany. Zalecane jest szyfrowanie

    /S Wykonuje określoną operację na katalogach w danym katalogu i wszystkich podkatalogach.

    środa, 26 stycznia 2011

    Pomiar temperatury przy użyciu OpenWrt

    Pomiar temperatury przy użyciu OpenWrt
    Wpięte dwa czujniki.
    #instalacja
    opkg install digitemp

    #inicjacja pliku konfiguracyjnego
    digitemp_DS2490 -a -i

    DigiTemp v3.5.0 Copyright 1996-2007 by Brian C. Lane
    GNU Public License v2.0 - http://www.digitemp.com
    Found DS2490 device #1 at 001/002
    Turning off all DS2409 Couplers
    ...
    Searching the 1-Wire LAN
    282CB6C80200006C : DS18B20 Temperature Sensor
    2837B4C80200004C : DS18B20 Temperature Sensor
    ROM #0 : 282CB6C80200006C
    ROM #1 : 2837B4C80200004C
    Wrote .digitemprc
    Jan 26 11:48:07 Sensor 0 C: 21.31 F: 70.36
    Jan 26 11:48:09 Sensor 1 C: 22.56 F: 72.61

    #skrypt odczytujący dane z czujników
    #!/bin/sh
    str0=$(digitemp_DS2490 -t 0 -q -o "%R;%Y-%m-%d %H:%M:%S;%.2C")
    echo ${str0//./,} >> /home/termometr0.csv

    str1=$(digitemp_DS2490 -t 1 -q -o "%R;%Y-%m-%d %H:%M:%S;%.2C")
    echo ${str1//./,} >> /home/termometr1.csv

    Po konwersji danych tzn zamiany kropki na przecinek, plik csv można od razu otworzyć w excel'u.


    Źródło:
    http://eko.one.pl/?p=openwrt-temperatura