Hackers gebruiken steeds vaker ongebruikelijke programmeertalen om malware aan te passen of nieuwe malware te ontwikkelen. Beveiliger BlackBerry publiceerde daarover een nieuwe studie, toepasselijk getiteld ‘Old Dogs New Tricks’.
Malware-auteurs hebben de reputatie traag te zijn met het veranderen van wat voor hen werkt, maar dit is niet altijd het geval. Sommige malwaregroepen maken graag gebruik van nieuwe of ‘exotische’ programmeertalen om detectie te omzeilen of om specifieke pijnpunten in hun ontwikkelingsproces aan te pakken. Vaak wordt de programmeertaal ook aangepast aan het ‘segment’ dat de criminelen proberen aan te pakken. In de internet of things (iot)-wereld bijvoorbeeld gebruiken veel apparaten C of Assembler als taal. Soms wordt ook voor een bepaalde taal gekozen om dat deze gemakkelijk te gebruiken is of veel features bevat die het leven van de programmeur gemakkelijker maken, zoals de pip package manager voor Python of npm voor Node.js.
Het gebruik van exotische programmeertalen voor malware is trouwens geen nieuwe trend. Ook vroeger werden al virussen en trojans gevonden die in Delphi of VBS waren geprogrammeerd. Toch lopen de nieuwe talen steeds meer in de kijker. Het BlackBerry Research & Intelligence-team koos daarom vier ongewone programmeertalen om van naderbij te bekijken: Go, D, Nim en Rust. De onderzoekers ontdekten dat deze talen bestaande detectie gebaseerd op digital signatures kunnen tegengaan en dat ze het lastiger maken om de malwarepaketten te onderzoeken via reverse engineering. De nieuwe programmeertalen maskeren malware, waardoor deze niet alleen moeilijker te detecteren is, maar ook lastiger te kraken.
Omdat deze talen vrij nieuw zijn, zijn er weinig analysetools beschikbaar waarmee ze gemakkelijk onder de loep gelegd kunnen worden. Tot slot maken deze talen ook cross-compilation mogelijk, waardoor de malware gemakkelijk geschikt gemaakt kan worden voor zowel Windows- als Mac- en Linux-omgevingen.