Netcat proxy
Írta: Kerekes Attila
May/090
Sok helyen olvastam, hogy ez lehetséges, de valahogy igazi élő példát nem találtam rá. Viszont amit találtam:
mkfifo backstream nc -l -p 31337 0<backstream | nc google.hu 80 1>backstream
Ezek után ha csatlakozunk a gépünk 31337-es portjára egy böngészővel, jó eséllyel a google.hu fog bejönni. Oké, ez frankó, de mire megyünk vele? Ebben a formában tényleg nem sokra. De tegyük fel, hogy valahol egy tűzfal mögött ücsörgünk, és szeretnénk ircezni, de csak a 80as port van engedélyezve kifele (suli, meló, stb).
mkfifo backstream nc -l -p 31337 0<backstream | nc irc.atw.hu 6667 1>backstream
Most ha kívülről csatlakoznánk az otthoni gépünk 80as portjára egy irc klienssel mondjuk, akkor az továbbküldene minket az atw.irc.hu 6667es portjára. Persze erre sok más és talán egyszerűbb megoldás is létezik. Mégis miért lenne érdemes ezt így megvalósítani? Itt lényegében akármilyen egyéb shellscriptet közbe szúrhatunk, pl:
mkfifo backstream nc -l -p 31337 0<backstream | sed -u s/rick/duck/g | nc irc.atw.hu 6667 1>backstream
Ezt használva ezentúl ircen akárhányszor azt írjuk be a kliensünkbe, hogy rick, a többiek duck-ot fognak látni. Magyarul megváltoztattuk az áthaladó adatfolyamot. És ezt kombinálva pár egyéb technikával igen komoly eredményeket érhetünk el…
#eof
FreeBSD + Postgresql
Írta: Kerekes Attila
May/090
Néha szükségünk lehet egy jó adatbázis szerverre az alkalmazásainkhoz. Hát itt egy rövid leírás, FreeBSDn hogyan tudjuk ezt összehozni. Mint ahogy azt a cím is mondja, postgresql-t fogunk használni:
[root@rogue ~]# cd /usr/ports/databases/postgresql84-server/ [root@rogue /usr/ports/databases/postgresql84-server]# make install clean ...
Ha végzett a folyamat, indítsuk el, és állítsuk be a szerverünket:
[root@rogue ~]# echo "postgresql_enable=\"YES\"" >> /etc/rc.conf [root@rogue ~]# /usr/local/etc/rc.d/postgresql initdb ... [root@rogue ~]# /usr/local/etc/rc.d/postgresql start
Ezután mondjuk állítsunk be egy jelszót a pgsql usernek:
[root@rogue ~]# su pgsql [pgsql@rogue /root]$ psql templat1 ... template1=#ALTER ROLE pgsql PASSWORD 'jelszoide'; ALTER ROLE template1=# \q [pgsql@rogue /root]$
Mostmár az azonosítást átállíthatjuk jelszavasra. A /usr/local/pgsql/data/pg_hba.conf-ot kell szerkesztenünk, hogy valami hasonló sorok legyenek a végén:
# "local" is for Unix domain socket connections only local all all md5 # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 host all all 0.0.0.0/0 md5
Majd indítsuk újra az adatbázis szervert:
[root@rogue ~]# /usr/local/etc/rc.d/postgresql restart ...
Mostmár létrehozhatunk magunknak egy adatbázist és hozzá egy felhasználót:
[root@rogue ~]# su pgsql [pgsql@rogue /root]$ createdb proba Password: [pgsql@rogue /root]$ createuser probauser -P Enter password for new role: Enter it again: Shall the new role be a superuser? (y/n) n Shall the new role be allowed to create databases? (y/n) n Shall the new role be allowed to create more new roles? (y/n) n Password: [pgsql@rogue /root]$ psql template1 Password: Welcome to psql 8.3.7, the PostgreSQL interactive terminal. ... template1=# GRANT ALL PRIVILEGES ON DATABASE proba to probauser; GRANT template1=# \q
Próbáljuk is ki az új felhasználónkat az adatbázisunkon:
[pgsql@rogue /root]$ psql -d proba -U probauser Password for user probauser: Welcome to psql 8.3.7, the PostgreSQL interactive terminal. ...
Remélem minden simán ment, és sikerült eljutni a végére :)
Ajánlott irodalom:
http://www.postgresql.org/docs/8.3/static/index.html
#eof
FreeBSD + OpenVPN kliens
Írta: Kerekes Attila
May/090
Pont ma futottam bele ebbe a problémába, hát nézzük, hogyan lehet összehozni egy openvpn kapcsolatot freebsd alatt.
Elsőre tegyük fel az openvpn-t:
[root@rogue ~]# cd /usr/ports/security/openvpn [root@rogue /usr/ports/security/openvpn]# make install clean
Ez eltart egy kis ideig, de végeredményben szinte kész is vagyunk. Egyetlen probléma, hogy az openvpn indításkor nem rántja be automatikusan a tap device drivert, és csatlakozáskor csak egy hibaüzenetet kapunk. A megoldás egyszerű, kézzel kell betölteni a drivert:
[root@rogue ~]# kldload if_tap
Mostmár hiba nélkül tudunk csatlakozni a kliensünkkel például az egyetemi hálózatunkra, ha megvannak a szükséges fájljaink:
[root@rogue ~/nymevpn]# openvpn nyme.ovpn Thu May 21 22:44:23 2009 OpenVPN 2.0.6 i386-portbld-freebsd7.2 [SSL] [LZO] built on May 21 2009 ... [root@rogue ~]# ifconfig tap0 tap0: flags=8843 metric 0 mtu 1500 ether 00:bd:cb:ca:24:00 inet 10.8.0.2 netmask 0xffffff00 broadcast 10.8.0.255
És kész is vagyunk.
Esetleg egy pár tipp: netstattal megnézhetjük, hogy vajon a default gatewayünknek is a vpn-es router került be. Ha igen ezt visszaállíthatjuk az eredetire (adott esetben 10.0.0.1):
[root@rogue ~]# netstat -rn Routing tables Internet: Destination Gateway Flags Refs Use Netif Expire default 10.8.0.1 UGS 0 0 tap0 172.16.4.0/24 10.8.0.1 UGS 0 0 tap0 ... [root@rogue ~]# route del default 10.8.0.1 del net default: gateway 10.8.0.1 [root@rogue ~]# route add default 10.0.0.1 add net default: gateway 10.0.0.1 [root@rogue ~]# netstat -rn Routing tables Internet: Destination Gateway Flags Refs Use Netif Expire default 10.0.0.1 UGS 0 0 em0 172.16.4.0/24 10.8.0.1 UGS 0 0 tap0
#eof
Helló világ!
Írta: Kerekes Attila
May/090
Itt fogom megpróbálni megörökíteni azokat a téma köröket, amikkel hálózati kalandozásaim során összefutok, és eddig nagyjából csak angol leírás létezik róluk. Ha lesz elég időm, talán ilyesmikről olvashattok:
Operációs rendszerek:
- DD-WRT
- Debian Linux
- FreeBSD
Hálózatok biztonságának tesztelése:
- különböző mitm támadások (dsniff, ettercap)
- ssl kapcsolatok megkerülése (sslstrip, tanúsítvány hamisítás)
- metasploit
- w3af
- backtrack, samurai
és még ki tudja mi mindenre lesz időm…
#eof