image

VirusTotal kondigt Rust-versie aan van malwaredetectietool YARA

maandag 20 mei 2024, 14:29 door Redactie, 7 reacties

Googles online virusscandienst VirusTotal heeft vandaag een nieuwe versie van de populaire malwaredetectietool YARA aangekondigd. YARA-X is een compleet nieuwe implementatie van YARA gemaakt in programmeertaal Rust. Dit zou voor een betere gebruikerservaring, prestaties, security en betrouwbaarheid moeten zorgen.

YARA is een op regels gebaseerde tool voor het detecteren en classificeren van malware. De tool, die al meer dan vijftien jaar bestaat, is ontwikkeld door Victor Alvarez van VirusTotal. Allerlei security- en antivirusbedrijven maken er gebruik van voor detectie en classificatie van malware. Volgens Alvarez maakt de overstap naar Rust nieuwe features mogelijk en zijn er in YARA-X meteen allerlei bugs verholpen. Rust wordt omschreven als een 'memoy safe' programmeertaal, wat het lastiger moet maken dat kwetsbaarheden zoals memory corruption zich voordoen.

Alvarez kondigde YARA-X aan in een blogpost met de titel: "YARA is dead, long live YARA-X". Hij nuanceert dat YARA niet echt dood is, omdat veel mensen en organisaties er nog gebruik van maken. Deze versie zal dan ook nog steeds worden ondersteund met bugfixes en kleine features. Grote features of modules zullen echter alleen voor YARA-X verschijnen. De Rust-versie van YARA bevindt zich nog wel in de bètafase, maar is volgens Alvarez volwassen en stabiel genoeg om te worden gebruikt.

Reacties (7)
20-05-2024, 16:23 door Anoniem
Ik ben benieuwd wanneer ze het in native-python beschikbaar zouden stellen of het dan een stap sneller, veiliger voor gebruikers en betrouwbaarder wordt.
21-05-2024, 07:22 door Anoniem
Dit zou voor een betere gebruikerservaring, prestaties, security en betrouwbaarheid moeten zorgen.
Is dat niet wat Apple ook elke keer roept in een soort van rechtvaardiging van z'n vendor lock-in?
21-05-2024, 08:08 door Xavier Ohole
Door Anoniem: Ik ben benieuwd wanneer ze het in native-python beschikbaar zouden stellen of het dan een stap sneller, veiliger voor gebruikers en betrouwbaarder wordt.

'native python'? wa's da?
21-05-2024, 09:12 door Anoniem
Door Anoniem: Ik ben benieuwd wanneer ze het in native-python beschikbaar zouden stellen of het dan een stap sneller, veiliger voor gebruikers en betrouwbaarder wordt.
Python is qua uitvoering niet bepaald een snelle taal, dus sneller zou echt een grote verrassing zijn. Rust is memory safe en vangt daarmee een van de grootste bronnen van onbetrouwbaarheid af. Op dat punt zal Rust vermoedelijk niet in het nadeel zijn, dus.

Ik heb geen ervaring met Rust, maar ik zie niet in hoe memory safety in een gecompileerde taal te realiseren is zonder dat de compiler heel vergaand fouten in datastructuren en het gebruik ervan afvangt, en dat is iets waar het dynamisch getypeerde Python juist niet goed in is. Met andere woorden: ik vermoed dat je bij Rust met een druk op de knop in de editor, tijdens het coderen, al fouten opspoort die je in Python pas tijdens testen ontdekt. Als wat je maakt complex wordt, qua omvang van de code en gebruikte datastructuren, kan het grote voordeel van Python omslaan in een nadeel, dan heb je juist wat aan een taal die je in een zo vroeg mogelijk stadium al op je vingers tikt.

Python blinkt uit in compacte notaties die het zonder veel moeite gewoon doen. Dat op zich is ook een factor in het betrouwbaar maken van code, want hoe meer ballen je als programmeur tegelijkertijd in de lucht moet zien te houden hoe groter de kans is dat je ergens steekjes laat vallen en die foutjes niet opmerkt. Toen ik lang geleden voor het eerst kennis maakte met Python, na al vele jaren ervaring te hebben in verschillende andere programmeertalen, was de mate waarin wat ik opschreef het gewoon meteen deed een heel aangename verrassing.

Maar bij complexere problemen wordt ook de software die je ervoor schrijft complexer, en ga je complexere datastructuren in je programma nodig hebben die tussen allerlei onderdelen van je code worden doorgegeven, en dan vind ik dat dat voordeel van Python omslaat in een nadeel. Dan heb je juist veel aan een compiler die je in een zo vroeg mogelijk stadium al op je vingers tikt als er iets niet klopt, en hoe meer die compiler dan al weet af te vangen hoe meer je eraan hebt. Wat bij minder complexe code een voordeel is van Python wordt bij complexere code een nadeel.

Ik weet dat aan Python op een gegeven moment type annotations en type hints zijn toegevoegd die niet door de compiler maar door externe tools gebruikt kunnen worden. Daar ben ik nooit aan toe gekomen, en ik word er ook niet vreselijk enthousiast over: het komt op mij over alsof er met plakbandjes verbeteringen worden aangebracht. Er zijn en worden inmiddels andere talen ontwikkeld die de geleerde lessen van begin af aan in het ontwerp van de taal integreren.
21-05-2024, 09:47 door Anoniem
Door Xavier Ohole:
Door Anoniem: Ik ben benieuwd wanneer ze het in native-python beschikbaar zouden stellen of het dan een stap sneller, veiliger voor gebruikers en betrouwbaarder wordt.

'native python'? wa's da?

Dat is veiliger dan Rust, duh!!
21-05-2024, 10:32 door Anoniem
Door Anoniem:
Door Xavier Ohole:
Door Anoniem: Ik ben benieuwd wanneer ze het in native-python beschikbaar zouden stellen of het dan een stap sneller, veiliger voor gebruikers en betrouwbaarder wordt.

'native python'? wa's da?

Dat is veiliger dan Rust, duh!!

Veiligheid is een gevolg van de zorgvuldigheid waarin een programma geschreven is. De ene taal vergt daarbij echter minder aandacht dan de andere. Aannemen dat 'de taal' een programma veilig maakt is misschien wel datgene dat leidt tot onveilige implementaties. Daarbij is de compiler van rust Stricter dan die van Python (native) en zal Rust minder ruimte laten voor potentieel onveilige implementaties. Dit wil echter niet zeggen dat je met python niet hetzelfde resultaat kunt bereiken, dit vergt echter meer aandacht en kennis van de programmeur.
21-05-2024, 16:04 door Anoniem
Door Anoniem:
Dit zou voor een betere gebruikerservaring, prestaties, security en betrouwbaarheid moeten zorgen.
Is dat niet wat Apple ook elke keer roept in een soort van rechtvaardiging van z'n vendor lock-in?

"Ik weet van helemaal niks, en dat laat ik graag zien door allerlei onzin te roepen".

Als je op een link geklikt had (of bekend was met het onderwer) had je kunnen zien dat het een open source tool is geschreven in Python (en nu herschreven in Rust) , onder een BSD licentie.

Vertel nog eens wat je nu bedoelt met "vendor lock-in" ?
Reageren
Ondersteunde bbcodes
Bold: [b]bold text[/b]
Italic: [i]italic text[/i]
Underline: [u]underlined text[/u]
Quote: [quote]quoted text[/quote]
URL: [url]https://www.security.nl[/url]
Config: [config]config text[/config]
Code: [code]code text[/code]

Je bent niet en reageert "Anoniem". Dit betekent dat Security.NL geen accountgegevens (e-mailadres en alias) opslaat voor deze reactie. Je reactie wordt niet direct geplaatst maar eerst gemodereerd. Als je nog geen account hebt kun je hier direct een account aanmaken. Wanneer je Anoniem reageert moet je altijd een captchacode opgeven.