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!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2011-02-25 15:29:57

  krzys.tk - Użytkownik

krzys.tk
Użytkownik
Zarejestrowany: 2010-05-07

ClamAV-daemon, naruszenie ochrony pamięci

Witam.
Od pewnego czasu zauważyłem, że ClamAV zaczął ostro zapełniać logi. Oto ich fragment:

Kod:

Feb 24 19:45:32 poczta amavis[19027]: (19027-06-2) (!!)ClamAV-clamd av-scanner FAILED: run_av error: Too many retries to talk to /var/run/clamav/clamd.ctl (Can't connect to UNIX socket /var/run/clamav/clamd.ctl: Po\263\261czenie odrzucone) at (eval 86) line 309.
Feb 24 19:45:32 poczta amavis[19027]: (19027-06-2) (!!)WARN: all primary virus scanners failed, considering backups
Feb 24 19:45:42 poczta amavis[19027]: (19027-06-2) (!)killing process [19211] running ClamAV-clamscan (reason: on reading: timed out)
Feb 24 19:45:42 poczta amavis[19027]: (19027-06-2) (!)run_av (ClamAV-clamscan): collect_results - reading aborted: timed out at /usr/sbin/amavisd-new line 3108.
Feb 24 19:45:42 poczta amavis[19027]: (19027-06-2) (!!)ClamAV-clamscan av-scanner FAILED: run_av error: run_av: Exceeded allowed time at (eval 86) line 516.
Feb 24 19:45:42 poczta amavis[19027]: (19027-06-2) (!!)TROUBLE in check_mail: virus_scan FAILED: virus_scan: ALL VIRUS SCANNERS FAILED: ClamAV-clamd av-scanner FAILED: run_av error: Too many retries to talk to /var/run/clamav/clamd.ctl (Can't connect to UNIX socket /var/run/clamav/clamd.ctl: Po\263\261czenie odrzucone) at (eval 86) line 309.; ClamAV-clamscan av-scanner FAILED: run_av error: run_av: Exceeded allowed time at (eval 86) line 516.
Feb 24 19:45:42 poczta amavis[19027]: (19027-06-2) (!)PRESERVING EVIDENCE in /var/lib/amavis/tmp/amavis-20110224T194525-19027

Zauważyłem, że są też problemy z uruchomieniem clamav-daemon:

Kod:

/etc/init.d/clamav-daemon restart
Stopping ClamAV daemon: clamd.
Starting ClamAV daemon: clamd LibClamAV Warning: ***********************************************************
LibClamAV Warning: ***  This version of the ClamAV engine is outdated.     ***
LibClamAV Warning: *** DON'T PANIC! Read http://www.clamav.net/support/faq ***
LibClamAV Warning: ***********************************************************
/lib/lsb/init-functions: line 30: 20671 Naruszenie ochrony pamięci  /sbin/start-stop-daemon --start --nicelevel $nice --quiet --exec $exec --oknodo --pidfile "$pidfile" -- "$@"
 failed!

Uaktualniłem ClamAV do wersji 0.97 jednak to nie pomogło. Wciąż przy próbie uruchomienia występuje informacja o naruszeniu ochrony pamięci. Co mogę z tym zrobić? Nie ukrywam, że zależy mi na bezpieczeństwie moich e-maili i wyłączenie skanowania nie wchodzi w rachubę.

Offline

 

#2  2011-02-26 21:00:12

  torrentow - Członek Sejmowej Komisji Śledczej

torrentow
Członek Sejmowej Komisji Śledczej
Skąd: z GNU
Zarejestrowany: 2009-11-23

Re: ClamAV-daemon, naruszenie ochrony pamięci

strace próbowaleś?


Każdy sam sobie szkodzi :)
http://img715.imageshack.us/img715/7104/apt.png

Offline

 

#3  2011-02-26 21:16:00

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: ClamAV-daemon, naruszenie ochrony pamięci

Spróbuj go odpalić z palca w terminalu, i zobacz, co wypluje.

Jeśli nic ciekawego, to potem też z roota gdb albo strace.


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#4  2011-02-26 23:04:09

  krzys.tk - Użytkownik

krzys.tk
Użytkownik
Zarejestrowany: 2010-05-07

Re: ClamAV-daemon, naruszenie ochrony pamięci

Kod:

/usr/sbin/clamd -c /etc/clamav/clamd.conf
LibClamAV Warning: ***********************************************************
LibClamAV Warning: ***  This version of the ClamAV engine is outdated.     ***
LibClamAV Warning: *** DON'T PANIC! Read http://www.clamav.net/support/faq ***
LibClamAV Warning: ***********************************************************
Naruszenie ochrony pamięci

To co daje strace umieściłem tutaj

Offline

 

#5  2011-02-26 23:45:53

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: ClamAV-daemon, naruszenie ochrony pamięci

A zatem jakaś inna wersja?
Ewentualnie, właśnie aktualizowałem u mnie clama do 0.97 (Gentoo) - i trzeba było zaktualizować bazę wirusów, bo na bazie pobranej przez freshclama wcześniejszej wersji nie działał , bo nie umiał jej czytać.

Tylko że u mnie to clamd napisał, ale nie wywalił się.
Spróbowałbym na twoim miejscu odinstalować go całkowicie, i zainstalować ponownie, jednak to nie gwarantuje, że błąd zniknie, choć szansa istnieje.
Względnie samo clamd - bez wskazania konfiga - daje taki sam komunikat?
Bo istnieje jakieś raczej  małe prawdopodobieństwo, że na kłopot ma wpływ konfiguracja.
Choć oczywiście powinien być w takim wypadku komunikat, a nie Segmentation fault.

Pozdrawiam
;-)

Ostatnio edytowany przez Jacekalex (2011-02-26 23:55:30)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#6  2011-02-27 09:06:30

  krzys.tk - Użytkownik

krzys.tk
Użytkownik
Zarejestrowany: 2010-05-07

Re: ClamAV-daemon, naruszenie ochrony pamięci

Zainstalowałem ClamAV z apta, przedtem robiąc apt-get purge clam*. Oczyściłem folder /var/lib/clamav/. Nowa wersja 0.94 pierwszy raz uruchomiła się bez problemów, później przy próbie restartu z init.d sypała tymi samymi błędami co 0.97. Jak uruchamiam clamd z roota poleceniem clamd -c /etc/clamav/clamd.conf
wyrzuca tylko dwa warningi:

Kod:

ARNING: Ignoring deprecated option ArchiveLimitMemoryUsage at line 12
WARNING: Ignoring deprecated option MailFollowURLs at line 34

i przechodzi w tło. Natomiast skrypt /etc/init.d/clamav-daemon restart zabija clamav ale nie udaje mu się go ponownie uruchomić. Dostaję dokładnie to, co w pierwszym poście.

Offline

 

#7  2011-02-27 09:40:26

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: ClamAV-daemon, naruszenie ochrony pamięci

DO debugowania programów potrzebne jest trochę doświadczenia, i samodzielnego sprawdzania i analizowania logów, dlatego nie polecam.

Jeśli z palca w termialu chodzi, to dopisz polecenie uruchomienia clamd do np /etc/rc.local, skrypt  /etc/init.d/clamav-daemon olej sikiem prostym.
polecenie do rc.local? np:

Kod:

sudo -u <USER> /usr/sbin/clamd -c /etc/clamav/clamd.conf &

gdzie <USER> - to użytkownik, z którego uprawnieniami ma działać clamd.
żeby wpis działał - musi być w /etc/rc.local przed exit.

Wtedy będzie chodził - jeśli wstał z palca.
Polecenie najpierw spróbuj w terminalu.
Wpisując do rc.local nie zapomnij dać znaku & za poleceniem - jednego,bo inaczej reszta cześć systemu może poczekać, aż skrypt rc.local (i clamd) skończy pracę ;)

Poza tym jeśli z roota wstał, a z użytkownika clamav (czy podobny) nie wstał, to mogłoby teoretycznie oznaczać kłopot z jakimiś uprawnieniami, ale w takim przypadku nie powinien się wywalać (Segmentation Fault )- chociaż może mieć błąd w kodzie, w tzw obsłudze wyjątku.

Jeżeli chcesz się bawić w wyjaśnianie zachowania  clamd,
to możesz zastosować śledzenie wsteczne.

Jednak tu inaczej się zachowuje włączany z skryptu startowego /etc/init.d/clamav-daemon , a inaczej odpalany z palca, także błąd będzie dość ciężko zlokalizować.
Możesz też poszukać "inspiracji" na bugzilli Debiana.
Co do błędów Warning - popraw konfig, masz napisane, co i gdzie w komunikatach.

To by było na tyle
;-)

Ostatnio edytowany przez Jacekalex (2011-02-27 09:44:25)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#8  2011-02-27 09:48:02

  krzys.tk - Użytkownik

krzys.tk
Użytkownik
Zarejestrowany: 2010-05-07

Re: ClamAV-daemon, naruszenie ochrony pamięci

Jacekalex napisał(-a):

Poza tym jeśli z roota wstał, a z użytkownika clamav (czy podobny) nie wstał, to mogłoby teoretycznie oznaczać kłopot z jakimiś uprawnieniami, ale w takim przypadku nie powinien się wywalać (Segmentation Fault )- chociaż może mieć błąd w kodzie, w tzw obsłudze wyjątku.

Niestety dokładnie tak jest. Wpisałem do /etc/rc.local to o co prosiłeś i wyrzuciło Naruszene ochrony. Na śledzenie wsteczne i inne zaawansowane sposoby debugowania nie mam głowy. Uważam, że najprostsze rozwiązania są najskuteczniejsze. Zatem moje pytanie brzmi: czy moge bezpiecznie odpalać ClamAV z roota?

Ostatnio edytowany przez krzys.tk (2011-02-27 09:54:43)

Offline

 

#9  2011-02-27 15:19:47

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: ClamAV-daemon, naruszenie ochrony pamięci

Ja mam clama odpalonego z roota, i jakoś działa, problemow nie mialem.
Z roota tylko dlatego, że kilka programów z niego korzysta, anie chciało mi się go puszczać dla każdego usera osobno.

Bo można odpalić kilka procesów z róznymi konfigami, i każdy przypisany do innego usera.

Względnie, w Ubuntu miałem clamd działający jako root chroniony profilem apparmoa, obecnie mam Gentoo, do apparmora mam, ale dziala tylko cześciowo (userspace się nie  sprawdza), natomiast mam grsecurity i paxa, dlatego o jakiś straszny kłopot się nie obawiam.
Ale na serwerze czy routerze bym się dwa razy zastanowił, czy Clama odpalać jako root, chyba, żeby był chroniony polityką ACL Grsecurity, albo przynajmniej Selinux lub Apparmor.

Tylko, że obecnie na desktopie (Gentoo) mam Grsecurity, Paxa i Apparmor.
A wszystko na systemie Gentoo Hardened - idealnym w mojej opinii na serwer i router, chociaż dosć trudnej, zwłaszcza dla "mgr inżyniera" od Sapera i Pasjansa  w WinXp ;)))

Pozdrawiam
;-)

Ostatnio edytowany przez Jacekalex (2011-02-27 15:20:32)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)