2012-07-24 18 views
7

Wdrażamy aplikację dla przedsiębiorstw z dużym naciskiem na bezpieczeństwo, w tym na przesyłanie plików. Pliki te muszą być skanowane przez wirusy, ale również muszą być zaszyfrowane.Skanowanie plików w pamięci, najlepiej przy użyciu ClamAV

Obecny proces polega na tym, że pliki są przesyłane, a następnie przesyłane strumieniowo - przez szyfrator - do tymczasowego obszaru pamięci na dysku. Następnie wywoływany jest skaner wirusów, a pliki są odszyfrowywane w locie, przesyłane do ClamAV przez gniazdo - a następnie status wirusa zwracany z gniazda.

Problem polega na tym, że ClamAV wydaje się pisać do tymczasowego obszaru na dysku przed skanowaniem, co oznacza niezaszyfrowane, potencjalnie poufne dane w systemie plików.

Czy ktoś wie, jak to naprawić? Być może poprzez skonfigurowanie ClamAV do skanowania tylko w pamięci (moja wyszukiwarka Google nie przyniosła żadnych wyników), a może jakieś alternatywne sugestie?

+0

nie można po prostu zamontować ten system plików z pojemnikiem TrueCrypt ? Tak więc aplikacje zapisują do zabezpieczonego miejsca na dysku. –

+0

Ponadto, chyba że masz zaszyfrowaną zamianę, to "pamięć" może zostać zapisana na dysk. Atakujący może zatrzymać pamięć, aby uzyskać jej zawartość. –

+0

Myślę, że aspekt pamięci jest również ważny. Dziękuję. Właściwie to doceniam komentarze wszystkich. Dziękuję wam wszystkim. – Martin

Odpowiedz

6

Zakładam, że używasz clamd, ponieważ mówisz do niego przez gniazdo nie clamscan narzędzie cli.

W takim przypadku możesz skonfigurować go za pomocą dyrektywy TemporaryDirectory w pliku clamd.conf, aby wskazywać na zaszyfrowany system plików do przechowywania temp za pomocą czegoś takiego jak dm-crypt (https://help.ubuntu.com/community/EncryptedFilesystemHowto) - Mam nadzieję, że to pomoże.

referencyjny z man 5 clamd.conf:

TemporaryDirectory STRING 
      Optional path to the global temporary directory. 
      Default: system specific (usually /tmp or /var/tmp). 
1

Najprostszą rzeczą, jaką mogę sobie wyobrazić, jest użycie dysku RAM.

Może powinieneś sprawdzić, czy ClamAV ma bardziej wyrafinowany interfejs API do takiego zadania.

4

Jest to dobry przykład:

Java API do wykrywania wirusa Korzystanie ClamAV Antywirus

http://nsinfra.blogspot.ca/2011/06/java-api-to-detect-virus-using-clamav.html

Ten post opisuje podejście do skanowania plików w celu wykrycia trojanów, wirusów, złośliwego oprogramowania i innych złośliwych zagrożeń korzystających z interfejsów API Java.

Następujące elementy zostały pokryte: O ClamAV Antivirus instrukcjami, aby zainstalować program antywirusowy ClamAV na maszynie Linux Podejście skanować plik, używając ClamAV Java API do wykrywania wirusów,