Michał I.

Michał I. Freelancer /
Consultant Nie
bojący się wyzwań

Temat: jak zrobic log z sesji ssh

Witam

Mam za zadanie zrobić log z sesji ssh każdego usera??
Albert C.

Albert C. Admin od wszystkiego
:)

Temat: jak zrobic log z sesji ssh

W sensie gdzie się ktoś łączył i co robil na tym ssh czy tylko gdzie po ssh sie łączył jaki host?
Jeżeli samo połączenia wychodzące ssh z sieci na zewnątrz to miałem coś takiego u siebie:
$filtr -A FORWARD -s 192.168.1.0/24 -d 0/0 -p tcp --syn -m limit --limit 2/s --dport 22 -j LOG --log-prefix "SSH_FROM_LAN : "
Michał I.

Michał I. Freelancer /
Consultant Nie
bojący się wyzwań

Temat: jak zrobic log z sesji ssh

chodzi mi o to z jakiego hosta się łączył i co robił w danej sesji
Mariusz Dalewski

Mariusz Dalewski Owner, MD Software

Temat: jak zrobic log z sesji ssh

Najprościej przerobić serwer ssh, i dodać do niego takie logowanie (jeżeli już nie posiada)

Druga metoda to np: ograniczenie powłoki na serwerze tylko do jednej (np bash) i dodanie do niej logowania komend via syslog (tak jak do .bash_history) - łącznie to jakieś 10 linijek kodu w 2-3 plikach, a więc też nie jest tragicznie. Sam tego używam w niektórych środowiskach.

Trzeba sobie zadać pytanie, na ile wiarygodny ma być taki log, gdyż razem z pomysłami na logowanie narzuca mi się dwa razy więcej pomysłów na obejście tych zabezpieczeń.
Stanisław P.

Stanisław P. Software designer

Temat: jak zrobic log z sesji ssh

Mariusz Dalewski:
Trzeba sobie zadać pytanie, na ile wiarygodny ma być taki log, gdyż razem z pomysłami na logowanie narzuca mi się dwa razy więcej pomysłów na obejście tych zabezpieczeń.

Popieram - chyba nic w userspace nie będzie wystarczająco wiarygodne. Dobrym pomysłem może być użycie kernelowego audit-a. Zdarzenia można przefiltrować na podstawie ścieżek, portów, usera, etc. Wszystko tak naprawdę monitorowane jest na poziomie syscall-i, więc nie do obejścia. Jeśli chodzi tylko o uruchomione programy, to można po prostu wszelkie warianty exec-a logować.
Michał I.

Michał I. Freelancer /
Consultant Nie
bojący się wyzwań

Temat: jak zrobic log z sesji ssh

Można przykład??

Mariusz Dalewski:
Najprościej przerobić serwer ssh, i dodać do niego takie logowanie (jeżeli już nie posiada)


Druga metoda to np: ograniczenie powłoki na serwerze tylko do jednej (np bash) i dodanie do niej logowania komend via syslog (tak jak do .bash_history) - łącznie to jakieś 10 linijek kodu w 2-3 plikach, a więc też nie jest tragicznie. Sam tego używam w niektórych środowiskach.

Trzeba sobie zadać pytanie, na ile wiarygodny ma być taki log, gdyż razem z pomysłami na logowanie narzuca mi się dwa razy więcej pomysłów na obejście tych zabezpieczeń.

konto usunięte

Temat: jak zrobic log z sesji ssh

Jeśli chcesz mieć logi z sesji usera co robił na shellu to zainteresuj się snoopy logger'em.

http://sourceforge.net/projects/snoopylogger/
Mariusz Dalewski

Mariusz Dalewski Owner, MD Software

Temat: jak zrobic log z sesji ssh

Michał Iwańczuk:
Można przykład??

http://www.mdsoftware.pl/opensource/bash-3.1_history_s...
Michał I.

Michał I. Freelancer /
Consultant Nie
bojący się wyzwań

Temat: jak zrobic log z sesji ssh

I co ztym zrobic:-) bo nie wiem zabardzo
Mariusz Dalewski:
Michał Iwańczuk:
Można przykład??

http://www.mdsoftware.pl/opensource/bash-3.1_history_s...
Adrian Czerniak

Adrian Czerniak Administrator
Systemów Uniksowych

Temat: jak zrobic log z sesji ssh

Nałożyć na źródła basha i go przekompilować.
Wojtek K.

Wojtek K. brakujące ogniwo
tego całego bajzlu

Temat: jak zrobic log z sesji ssh

Z takim patchem gdy user odpali sobie np mc to jest po ptokach.
Jakub Wartak

Jakub Wartak Szaman
UNIXa/Linux/Oracle,
IBM CATE

Temat: jak zrobic log z sesji ssh

grsecurity z tego co pamietam ma logowanie execve()

konto usunięte

Temat: jak zrobic log z sesji ssh

Snoopy is designed to aid the task of a sysadmin by providing a log of commands executed. Snoopy is completely transparent to the user and applications. It is linked into programs to provide a wrapper around calls to execve(). Logging is done via syslogd.

Temat: jak zrobic log z sesji ssh

Chyba jedynym sensownym sposobem byłoby "podsłuchiwanie" TTY... tylko dalej problem mc, po odpaleniu mc pewnie zostanie w logach tona krzaczków związanych z generacią "grafiki" ncurses
Stanisław P.

Stanisław P. Software designer

Temat: jak zrobic log z sesji ssh

Mariusz Gronczewski:
Chyba jedynym sensownym sposobem byłoby "podsłuchiwanie" TTY...

Na pewno sensownym?
echo -e 'jakieś\nkomendy' > komendy
chmod +x komendy
scp komendy serwer:
ssh server komendy

I już nie ma żadnego zapisu z sesji, bo nie ma tty. Dalej będę utrzymywał, że ta sprawa nie jest rozwiązywalna w userspace...

Temat: jak zrobic log z sesji ssh

To podsłuchiwanie tty i logowanie execów ;] (właściwie większości wywołań bo co z tego jak zobaczymy że userek sobie wywołał jakiś skrypt jak ten skrypt zacznie coś gmerać w plikach. Tyle że wtedy zostajemy z toną rzeczy do pzetwarzania ;/

konto usunięte

Temat: jak zrobic log z sesji ssh

Mariusz Gronczewski:
To podsłuchiwanie tty i logowanie execów ;] (właściwie większości wywołań bo co z tego jak zobaczymy że userek sobie wywołał jakiś skrypt jak ten skrypt zacznie coś gmerać w plikach. Tyle że wtedy zostajemy z toną rzeczy do pzetwarzania ;/

Jak zrobi x11 forwarding i odpali jakąś kobyłe pod Xami to nic nie pomoże...
Do tego mc wiele funkcji realizuje wewnętrznie, więc logowanie execve też nie pomoże. Da sie monitorować syscall'e, ale to zbyt wiele informacji.
Michał Panasiewicz

Michał Panasiewicz Administrator
systemów, sieci i
aplikacji.

Temat: jak zrobic log z sesji ssh

ttysnoop - The package allows you to snoop on login tty's through another tty-device or pseudo-tty. The snoop-tty becomes a 'clone' of the original tty, redirecting both input and output from/to it.

ttyrpld -ttyrpld is a multi-os kernel-level tty logger (key- and screenlogger for ttys) with (a)synchronous replay supprt. It supports most tty types, including vc, bsd and unix98-style ptys (xterm/ssh), serial, isdn, etc. Being implemented within the kernel makes it unavoidable for the default user. It runs with no overhead if the logging daemon is not active.

Temat: jak zrobic log z sesji ssh

Co nie rozwiazuje wyzej wymienionego problemu skryptow ;]
Michał Panasiewicz

Michał Panasiewicz Administrator
systemów, sieci i
aplikacji.

Temat: jak zrobic log z sesji ssh

Ano jeśli user ma możliwość uruchamiania własnych skryptów. Wszystko zależy od tego jakie uprawnienia ma user w systemie i jakie ma mozliwości obejścia ograniczeń.
Wcześniej wspomniano juz o grsecurity, audit , problem jest jak słusznie zauważyłeś w ilości danych które w ten sposób uzyskamy i ich obróbce.
IMHO logowanie wszystkiego bez możliwości obróbki tych danych, ich analizy, przeszukiwania i przedstawienia ich w strawnej postaci jest bez sensu (aczkolwiek różne są nakładane z góry wymogi).

Następna dyskusja:

"Kilka" sesji ssh naraz




Wyślij zaproszenie do