Było wiele dyskusji na temat SOużywanie obiektów blob do przechowywania plików binarnych, ale obecny problem dotyczy skanowania w poszukiwaniu wirusów. Prawdopodobnie istnieje wiele interfejsów API, które można wykorzystać do skanowania plików zapisanych w systemie plików. Czy istnieją jakieś obiekty BLOB? które mogą otrzymać strumienie lub bajty [] i zostać poproszone o przeskanowanie ich w poszukiwaniu wirusów i złośliwego oprogramowania? Jeśli tak, to czy ktoś ma jakieś zalecenia? Czy to kolejny powód, aby omijać obiekty BLOB?
Do Twojej wiadomości - używam teraz C # i MongoDb dla moich obiektów blob.
Odpowiedzi:
4 dla odpowiedzi № 1Potrzebowałem rozwiązania, o które pytało pytanie. Oceniłem wiele rzeczy i doszedłem do wniosku, że tak naprawdę nie było jednej dobrej biblioteki .NET. Więc zrobiłem własny.
Biblioteka nazywa się nClam i łączy się z serwerem ClamAV. Jest to biblioteka typu open source (Apache License 2.0), która ma bardzo prosty interfejs API. Możesz go uzyskać tutaj: https://github.com/tekmaven/nClam. Istnieje również pakiet nuget: nClam. Mam też kilka instrukcji, jak skonfigurować serwer ClamAV na moim blogu, tutaj: http://architectryan.com/2011/05/19/nclam-a-dotnet-library-to-virus-scan/.
3 dla odpowiedzi № 2
Nie wiem, czy istnieją interfejsy API do skanowania w pamięcidane (nie znalazłem żadnych), ale zawsze możesz umieścić swoje dane binarne w pliku tymczasowym, przeskanować plik (wywołując program zewnętrzny działający w linii poleceń) i usunąć go, gdy to zrobi.
3 dla odpowiedzi nr 3
Z pewnością interfejs API Sophos (SAVI) może skanować dowolne bufory pamięci - możesz zapewnić oddzwanianie w celu uzyskania dostępu do danych, więc mogą to być dowolne dane, do których masz dostęp.