Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam
Czym zbieracie logi dla policji?
Jeśli w sieci mamy adresy publiczne to nie ma najmniejszego problemu namierzyć delikwenta, ale mimo wszystko i tak musimy zbierać dane połączeń. Co innego jak robimy nata, przeważnie dostajemy zapytanie kto w danym dniu logował się na dany adres dnsowy jeśli już wogóle go podadzą.
Problem jest wtym, że iptables loguje jedynie adresy ip, a te jak wiadomo po jakimś czasie powiązanie dns-ip może się zmienić. Tcpdump by się do tego nadawał, ale z tcpdumpa nie można, albo nie znalazłem rozwiązania, by logował do bazy.
Chciałby zrobić taki system do łatwego zarządzania tymi danymi i mieć je w bazie, napisać kilka linijek php by ładnie to sobie wyświetlać i ewentualnie wykrywać jakieś anomalie tak jak to robią systemy za dużą kasę. Tylko, że w nich wrzuca sie cały ruch jakimś NetFlow i taki serwerek to obrabia.
czym najlepiej zbierać te dane?
z góry dzięki za sugestie.
Offline
Spytaj raczej na forach rosyjskich i białoruskich, tam to jest bardziej zaawansowane. :D
Na poważnie, to najprościej dać pacjentom dożywotnio adresy statyczne, potem w bazie zapisać, który adres do którego pacjenta, i gotowe.
W przypadku dynamicznych, masz logi DHCP czy PPPOE, do tego logi często Radiusa, i tam możesz to oskrypcić, Radius z resztą może zapisywać do bazy każde logowanie i wylogowanie pacjenta.
PPPOE można na 100% oskrypcić w tym celu. [url=http://superuser.com/questions/211411/executing-a-script-when-dhcpd-give-an-ip]DHCPD[/url] też.
Logi FW IMHO większego sensu nie mają, bo i tak nie mówią, kto użytkował dany adres IP od godziny X do godziny Y.
Logi połączeń?
Można na kilka sposobów, np użyć dsnifa - ma kilka zabawek do dokładnej inspekcji ruchu, da się to oskrypcić, żeby zapisywało w bazie.
W każdym razie jak ktoś się logował do serwera X czy Y z publicznego adresu,
to psiarnia tylko potrzebuje info, kto miał ten adres dnia o godzinie.
Materiał dowodowy mają na serwerze, gdzie się logował, włącznie z publicznym IP pacjenta i dokładną godziną w formacie czasu unixowego.
Z resztą sam zobacz.
http://www.trzepak.pl/viewtopic.php?f=12&t=42511
Ostatnio edytowany przez Jacekalex (2015-02-14 12:07:02)
Offline
Tak, tylko, przychodzi ktoś upoważniony i prosi o informacje kto w danym czasie posługiwał się adresem x.x.x.x i logował się do hosta forum.domena.com. Mam w sieci adresy statyczne z puli prywatnej więc robię nata. iptables loguje ip a nie nazwę domenową więc nie jestem w stanie na 100% sprawdzić kto w danym czasie nawiązywał połączenie do forum.domena.com, gdzyż przez te 11 miesięcy od zdarzenia forum.domena.com mogła zmienić ip dziesięciokrotnie i na dzień dzisiejszy dnsy będą odpowiadały zupełnie innym ip. więc w logu lepiej byłoby trzymać nazwę domenową gdzie klient nawiązywał połączenie zamiast adresu ip a tego iptables nie loguje :/ to też stąd moje pytanie.
najlepszym rozwiązaniem byłoby logowanie ip+domena jaką klient wpisał.
Offline
Dsniff i logowanie do bazy danych?
Któryś z programów w pakiecie dsniffa (o ile pamiętam, [b]urlsnarf[/b]) wyrzuca na konsolę dokładnie te dane,
o które pytasz, inny natomiast czesze hasła razem z adresami domenowymi.
Na 150% się da, tylko trzeba to oskrypcić trochę.
Nawet na bazie tcpdumpa mógłbyś coś wyrzeźbić, chociaż to byłaby ciężka partyzantka. :D
EDIT:
Urlsnarf:
<nazwa hosta > - - [14/Feb/2015:12:53:13 +0100] "GET http://forum.dug.net.pl/search.php?action=show_new HTTP/1.1" - - "-" "Mozilla/5.0 (X11; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0"
O to chodzi?
Jedna wada, pokazuje wszystkie wywołania GET, a tych na jedną stronę FF wysyła tylko 24. :D
W przypadku torrenta i p2p, ftp, itp masz adres Ip i godzinę połączenia z psiarni, które sprawdzasz z danymi z logów DHCP/PPPOE/RADiUSA.
Możesz też postawić transparentny proxy, i logować cały ruch.
Tcpdump by się do tego nadawał, ale z tcpdumpa nie można, albo nie znalazłem rozwiązania, by logował do bazy.[/quote]
Z odpowiednim regexem może wypluwać dowolne dane prosto do skrypta, który będzie pakował do bazy SQL.Ostatnio edytowany przez Jacekalex (2015-02-14 13:35:26)
W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem para bellum ;) | Pozdrawiam :)
Offline
[quote=Nicram]Witam
Czym zbieracie logi dla policji?
Jeśli w sieci mamy adresy publiczne to nie ma najmniejszego problemu namierzyć delikwenta, ale mimo wszystko i tak musimy zbierać dane połączeń. Co innego jak robimy nata, przeważnie dostajemy zapytanie kto w danym dniu logował się na dany adres dnsowy jeśli już wogóle go podadzą.
Problem jest wtym, że iptables loguje jedynie adresy ip, a te jak wiadomo po jakimś czasie powiązanie dns-ip może się zmienić. Tcpdump by się do tego nadawał, ale z tcpdumpa nie można, albo nie znalazłem rozwiązania, by logował do bazy.
Chciałby zrobić taki system do łatwego zarządzania tymi danymi i mieć je w bazie, napisać kilka linijek php by ładnie to sobie wyświetlać i ewentualnie wykrywać jakieś anomalie tak jak to robią systemy za dużą kasę. Tylko, że w nich wrzuca sie cały ruch jakimś NetFlow i taki serwerek to obrabia.
czym najlepiej zbierać te dane?
z góry dzięki za sugestie.[/quote]
xt_DNETMAP - połaczenie SNAT-a i DHCP.
[10906404.625114] xt_DNETMAP: add binding 172.22.3.206 -> 176.113.202.4 [10906413.430807] xt_DNETMAP: timeout binding 172.22.3.30 -> 176.113.203.228 [10906413.430810] xt_DNETMAP: add binding 172.25.3.17 -> 176.113.203.228 [10906558.429677] xt_DNETMAP: timeout binding 172.22.3.250 -> 176.113.203.176 [10906558.429680] xt_DNETMAP: add binding 172.25.3.7 -> 176.113.203.176
W połaczeniu ze zwykłym syslogiem robi robotę.
Offline
a od kiedy trzeba trzymać logi z historii dns?
masz logi z połączeń do ip i tyle - fizycznie na poziomie isp nie masz możliwości stwierdzenia jaki adres ip miał w zeszłą sobotę dupa.dyndns.cn. niech podadzą ip to masz obowiązek im podać.
Offline
Jak są publiczne adresy IP, to nawet nie z połączeń, tylko który pacjent 13 grudnia 1981 o godzinie 00.00.11 miał adres 46.229.145.10 :D
Logi z połączeń są potrzebne wtedy, jak masz pacjentów za NAT i wiszą gremialnie na jednym lub kilku IP, i kilkanastu pacjentów używa równocześnie jednego adresu publicznego.
Albo ewentualnie list do Pani Premier, żeby zarządziła wprowadzenie IPv6, tam w ogóle nie będzie problemu, adresów w trzy i trochę - 2^16 lub 2^32 dla operatora, i mac zaszyty w adresie IP (tryb autokonfiguracji).
Przy okazji wymiana paru milionów urządzeń sieciowych bardzo podniesie wskaźnik wzrostu gospodarczego przed wyborami. xD
Ostatnio edytowany przez Jacekalex (2015-02-14 14:30:52)
Offline
@jacekalex: kiedy ostatnio widziałeś adres ipv6 na podstawie maca np. w windowsie albo osx? owszem, da się ale to trzeba włączyć.
na swoim ubuntu mam przez radv skonfigurowane dwa adresy, jeden na podstawie maca, drugi randomowy (zmienny) który służy jako wyjściowy. i na routerze nie mam szans sprawdzenia który z randomowych adresów był przypisany do którego kompa.
owszem - dla isp problem nie istnieje: dostałeś klasę /64 czyli druga połówka adresu nas wali.
tym niemniej kolejny raz cię proszę - nie wypowiadaj się na tematy o których masz blade albo zerowe pojęcie. trzymaj się wydobycia węgla, a niuanse adresacji ipv6 pozostaw adminom.
Tak przy okazji: może nie zauważyłeś drobiazgu. Nie chodzi o to, który pacjent w danym momenciewychodził danym adresem IP i się z czyś tam łączył. Problem polega na sprawdzeniu, który się łączył w zeszły wtorek o siedemnastej z dupa.tld (przy czym nie masz pojęcia jaki IP miał dupa.tld w zeszły wtorek o siedemnastej).
Ostatnio edytowany przez ethanak (2015-02-14 15:18:52)
Offline
1606
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:10:34)
Offline
1607
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:10:35)
Offline
adres z autokonfiguracji (obojętnie - randomowy czy wzięty z maca) będzie unikalny w sieci /64 bo o to dba protokół identyfikacji sąsiadów w lanie. sieci /64 są raczej unikalne.
no chyba że ktoś wpadnie na szczęśliwy pomysł zrobienia sieci mniejszej niż 64 - ale to już jego problem.
Offline
1609
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:10:38)
Offline
[quote=ethanak]@jacekalex: kiedy ostatnio widziałeś adres ipv6 na podstawie maca np. w windowsie albo osx? owszem, da się ale to trzeba włączyć.
na swoim ubuntu mam przez radv skonfigurowane dwa adresy, jeden na podstawie maca, drugi randomowy (zmienny) który służy jako wyjściowy. i na routerze nie mam szans sprawdzenia który z randomowych adresów był przypisany do którego kompa.
owszem - dla isp problem nie istnieje: dostałeś klasę /64 czyli druga połówka adresu nas wali.
tym niemniej kolejny raz cię proszę - nie wypowiadaj się na tematy o których masz blade albo zerowe pojęcie. trzymaj się wydobycia węgla, a niuanse adresacji ipv6 pozostaw adminom.
Tak przy okazji: może nie zauważyłeś drobiazgu. Nie chodzi o to, który pacjent w danym momenciewychodził danym adresem IP i się z czyś tam łączył. Problem polega na sprawdzeniu, który się łączył w zeszły wtorek o siedemnastej z dupa.tld (przy czym nie masz pojęcia jaki IP miał dupa.tld w zeszły wtorek o siedemnastej).[/quote]
Nie na podstawie maca, tylko zawierający mac-adres.
Różnica jak między szczaniem w piwnicy a piciem wina w Szczawnicy.
Układ następujący:
Dla podsieci będących LAN-em przydzielana jest pula adresów z maską /64, co umożliwia tworzenie unikatowych adresów lokalnych dla łącza w oparciu o (niepowtarzalne) numery sprzętowe MAC (IEEE 802). [b]Adres taki (dla adresu MAC 10:22:33:44:55:66) będzie miał postać: 64bitowy_prefiks_sieci:1222:33FF:FE44:5566[/b].[/quote]
Sznurek:
http://pl.wikipedia.org/wiki/IPv6#Autokonfiguracja
I to nie Windows czy MacOS ma ustalać adres, tylko router przydziela adresy, 7000 razy prościej, niż w dhcp, bo w założeniu pacjent końcowy ma dostawać adres Ip z maską 64 bity, a operatorzy internetu adresy z maskami 32 albo 48 bit.
Wiec zamiast szukać dziury w całym, lepiej sam sobie poczytaj:
http://pl.wikipedia.org/wiki/IPv6
Ile unikalnych mac-adresów zmieścisz bez problemu na jednym adresie z maską /64, to spróbuj policzyć, i wszystkie adresy IP będą widoczne w internecie jako unikalne, bo cały adres ma 128 bit.
Przy okazji, jak adres o długości 128 bit dostajesz, to ile unikalnych adresów 128 bitowych możesz wygenerować jeśli maska to 64 bit?
To by było na tyle
;-)Ostatnio edytowany przez Jacekalex (2015-02-14 17:23:22)
W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem para bellum ;) | Pozdrawiam :)
Offline
1610
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:10:39)
Offline
@up
Windowsowe marketoidalne pierdolenie możesz sobie w schować w d....., i nigdzie więcej, M$ o prywatność użyszkodników dba tak samo, jak o bezpieczeństwo Windowsa.
W Iphonie fajnie to przygotowali już do IpPv4, czyli randomowy mac, przy każdym włączeniu sieci inny.
A w Linuxie można np tak:
perl -e 'for ($i=0;$i<6;$i++){@m[$i]=int(rand(256));} printf "%X:%X:%X:%X:%X:%X\n",@m;'
Trudne?
xD
To by było na tyle
;-)
Ostatnio edytowany przez Jacekalex (2015-02-14 17:31:25)
Offline
1611
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:10:40)
Offline
Pod tym jednakże warunkiem, że M$ zdąży włączyć to rozszerzenie przed premierą 1024 bitowego systemu Windows 999. :D
Oczywiście, może przesadzam,ale pamiętam, ile lat trwało, zanim IE zaczął prawidłowo obrabiać CSSy zgodne z W3C.
Albo np któraś wersja M$ Outlook (ten darmowy) zacznie normalnie obrabiać IMAPv4, czyli gadać z Dovecotem z użyciem tls.
Ostatnio edytowany przez Jacekalex (2015-02-14 17:50:39)
Offline
jacekalex: gdzie znalazłeś tę niewątpliwie ciekawą informację, jakoby to router przydzielał adresy? bo nawet w wikipedii piszą, że router rozgłasza prefix...
weź se na wstrzymanie, popisz trochę na onecie popierając strajkujących ogrodników, w międzyczasie poczytaj sobie co to router advertising i spróbuj zapamiętać, kto przydziela adres i na jakiej zasadzie. bo na razie wszyscy opowiadacie sobie bajki, w tym ty najbardziej odległą od rzeczywistości.
Offline
@Nicram OpenWrt z Gargoyle jakoś sobie z tym radzi - może warto podejrzeć ?
[url=http://imgur.com/OzmPeKo][img]http://i.imgur.com/OzmPeKo.png[/img][/url]
Offline
ale to wykracza poza ustawowy obowiązek - wymaga logowania również przesyłanych danych (w tym przypadku nagłówka host http).
Offline
Nie jestem ISP i nie znam ustawy. Tam to jakoś działa, chciałem kolegę nakierować ;-)
Offline
Ja ma to tak zrobione, iptables loguje wszystkie pakiety NEW, mam postawionego BIND i na nim logowanie kto co gdzie jakie zapytania. Wymusiłem korzystanie z mojego BIND i teraz wystarczy ze połączę te dwa logi i mam to co chciałeś.
Offline
[quote=djjanek]Ja ma to tak zrobione, iptables loguje wszystkie pakiety NEW, mam postawionego BIND i na nim logowanie kto co gdzie jakie zapytania. Wymusiłem korzystanie z mojego BIND i teraz wystarczy ze połączę te dwa logi i mam to co chciałeś.[/quote]
W przypadku Google Chrome nie wymusisz własnego DNS, bo ta przeglądarka ma wszyte na sztywno DNSy Google.
A jak je otworzysz dla Chrome, to każdy program może ich używać,
i nici z monitorowania, bo router nie dowie się nawet, jaki program woła na 8.8.4.4:53.
Także mocno "nieszczelny" masz ten system.
Dodam tylko, że mój ISP zrobił taką blokadę obcych DNS wraz z automatycznym przekierowaniem wywołań na port 53 na swoje DNSy, ale u mnie FW te odpowiedzi z przekierowanych adresy traktował, jak to FW zazwyczaj, radosnym komunikatem martias_source, czy coś w ten deseń, także działają po IPv4 tylko DNSy Google, inne natomiast (np OpenDNS) śmigają po IPv6 przez tunel Teredo.
Ja myślę, że co do zasady, skuteczne może być tylko info z Radiusa czy logów, kto w danej minucie i sekundzie używał danego adresu IP, a reszta, to zawsze będzie w jakimś stopniu gdybologia stosowana, bo i tak nie masz pewności, jakie ktoś wpisał sobie DNSy.
Natomiast problem jest z prawnikami, bo taki prokurator raczej niewiele wie o sieciach, a syn jego ciotki, który ma genetyczne umiejętności informatyczne i udaje informatyka w Prokuraturze Rejonowej wie jeszcze mniej, także wnioski piszą "w dobrej wierze", ciekawe, kiedy któryś poprosi o "zawartość transmisji internetowej z okresu od 5 stycznia do 27 kwietnia br". :D
Np w przypadku takiego pacjenta jak ja, nie miałbyś ani jednego zapytania DNS,
i ciekawe, co byś wtedy wysłał do prokuratury. :D
Pozdro
:craz:
Ostatnio edytowany przez Jacekalex (2015-02-16 02:51:11)
Offline
Np w przypadku takiego pacjenta jak ja, nie miałbyś ani jednego zapytania DNS,
i ciekawe, co byś wtedy wysłał do prokuratury. :D[/quote]
W moim przypadku, to z punktu widzenia kogoś poza moim PC, wychodzi na to, że ja tylko na IP operuję. xD
[img]http://i.imgur.com/rlld3EM.png[/img]
Wireshark kompletnie nie widzi żadnego ruchu na portach 53 na interfejsie wychodzącym. Bo ten jest na:
[img]http://i.imgur.com/5I6zqLE.png[/img]
Po tym, jak wpada do dnscrypta, zapytania są szyfrowane i lecą na port 443 (zwykle) — tego raczej mi nikt nie wytnie. xD
A tu jak to wygląda ze strony kogoś trzeciego:
[img]http://i.imgur.com/7di0MQj.png[/img]
Także nie ma bata bym korzystał z waszych DNS i byście mogli logować i kontrolować moje pornusy. xDOstatnio edytowany przez morfik (2015-02-16 05:55:30)
Offline
Time (s) | Query |
---|---|
0.00011 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00100 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='52.14.218.79' WHERE u.id=1 |
0.00067 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '52.14.218.79', 1714785643) |
0.00039 | SELECT * FROM punbb_online WHERE logged<1714785343 |
0.00062 | DELETE FROM punbb_online WHERE ident='185.191.171.14' |
0.00085 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=27030 AND t.moved_to IS NULL |
0.00006 | SELECT search_for, replace_with FROM punbb_censoring |
0.00256 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=27030 ORDER BY p.id LIMIT 0,25 |
0.00093 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=27030 |
Total query time: 0.00723 s |