-main-   -hh86 corner-   -artificial evolution-   -articles-   -viruses-   -LIP-   -online ezines-   -programs-   -links-


Nothing has such power to broaden the mind as the ability to investigate systematically and truly all that comes under thy observation in life.
(by Marcus Aurelius)
Language Infection Project


Main goal 1: infect all top100 Turing complete programming languages.

Main goal 2: infect all programming languages. (see RosettaCode, Hello-world collection, languages sorted by paradigm, ...)

There will be a LIP-zine in fall of 2013, which contains many new first infectors of certain langauges. If you want to participate, search a new language, and write a self-replicator. (The best codes and projects should go to general VX ezines such as valhalla or DarK-CodeZ. This magazine should give smaller and simpler project a nice place.)

* * * Great Wall of LIP participations * * *
#
date
language
author
comment
50
10.06.2015
Racket
genetix
First infector specific for Racket written by genetix, source released here.
49
05.06.2015
Rebol
genetix
First infector specific for Rebol written by genetix, source released here.
48
06.05.2015
Google's Go language binary
TMZ
First binary infector specific for Google's Go written by TMZ, source released here.
47
31.12.2014
Vala binary
TMZ
First binary infector specific for Vala written by TMZ, source released here.
46
09.10.2013
ActionScript
roy g biv
First source-code infector specific for ActionScript (using quine technique) written by roy g biv, source released in valhalla#4.
45
19.09.2013
Batch source code
roy g biv
First source-code infector specific for Batch (as Batch is compileable aswell; using quine technique) written by roy g biv, source released in valhalla#4.
44
09.09.2013
F# source code
roy g biv
First source-code infector specific for F# (using quine technique) written by roy g biv, source released in valhalla#4.
43
09.09.2013
Perl source code
roy g biv
First source-code infector specific for Perl (using quine technique) written by roy g biv, source released in valhalla#4.
42
08.09.2013
Ruby source code
roy g biv
First source-code infector specific for Ruby (using quine technique) written by roy g biv, source released in valhalla#4.
41
08.09.2013
Lua source code
roy g biv
First source-code infector specific for Lua (using quine technique) written by roy g biv, source released in valhalla#4.
40
07.09.2013
Python source code
roy g biv
First source-code infector specific for Python (using quine technique) written by roy g biv, source released in valhalla#4.
39
03.09.2013
COBOL source code
roy g biv
First source-code infector specific for COBOL (using quine technique) written by roy g biv, source released in valhalla#4.
38
27.08.2013
Fortran source code
roy g biv
First source-code infector specific for Fortran (using quine technique) written by roy g biv, source released in valhalla#4.
37
22.08.2013
Vala source code
roy g biv
First source-code infector specific for Vala (using quine technique) written by roy g biv, source released in valhalla#4. (also see discussion at VX Heaven forum)
36
27.06.2013
x10 source code
roy g biv
First source-code infector specific for Thomas J. Watson's x10 (using quine technique) written by roy g biv, source released in valhalla#4.
35
07.06.2013
Spark source code
roy g biv
First source-code infector specific for Spark (using quine technique) written by roy g biv, source released in valhalla#4.
34
06.06.2013
C++ source code
roy g biv
First source-code infector specific for C++ (using quine technique) written by roy g biv, source released in valhalla#4.
33
04.06.2013
VHDL source code
roy g biv
First source-code infector for VHDL (using quine technique) written by roy g biv, source released in valhalla#4.
32
04.06.2013
WinBatch source code
roy g biv
First source-code infector for compiled version of WinBatch (using quine technique) written by roy g biv, source released in valhalla#4.
31
25.05.2013
SmallBASIC source code
roy g biv
First source-code infector for SmallBASIC (using quine technique) written by roy g biv, source released in valhalla#4.
30
24.05.2013
QuickBASIC source code
roy g biv
First source-code infector for QuickBASIC (using quine technique) written by roy g biv, source released in valhalla#4.
29
04.05.2013
Haskell source code
roy g biv
First source-code infector for the compiled version of Haskell (using quine technique) written by roy g biv, source released in valhalla#4.
28
03.05.2013
Rust source code
roy g biv
First source-code infector for Mozilla's Rust (using quine technique) written by roy g biv, source released in valhalla#4.
27
02.05.2013
Falcon
hh86
First infector for Falcon written by hh86: source
26
02.05.2013
Objective-C source code
roy g biv
First source-code infector for Objective-C (using quine technique) written by roy g biv, source released in valhalla#4.
25
02.05.2013
Neko
hh86
First infector for Neko written by hh86: source
24
01.05.2013
FreeMat
hh86
First infector for FreeMat written by hh86: source
23
29.04.2013
Java source code
roy g biv
First source-code infector for Java (using quine technique) written by roy g biv, source released in valhalla#4.
22
27.04.2013
ALGOL source code
roy g biv
First source-code infector for ALGOL (using quine technique) written by roy g biv, source released in valhalla#4.
21
25.04.2013
Scilab
hh86
First infector for Scilab written by hh86: source
20
25.04.2013
Google's Go source code
roy g biv
First source-code infector for Google's Go (using quine technique) written by roy g biv, source released in valhalla#4.
19
23.04.2013
ADA source code
roy g biv
First source-code infector for ADA (using quine technique) written by roy g biv, source released in valhalla#4.
18
23.04.2013
D source code
roy g biv
First source-code infector for D (using quine technique) written by roy g biv, source released in valhalla#4.
17
22.04.2013
Pascal source code
roy g biv
First source-code infector for Pascal (using quine technique) written by roy g biv, source released in valhalla#4.
16
08.04.2013
C Shell
Psychologic
First infector for C Shell written by psychologic, source released here.
15
08.04.2013
Ocaml
genetix
First infector for functional language Ocaml written by genetix in DarK-CodeZ #5.
14
03.04.2013
Octave
genetix
First infector for the MATLAB dialect Octave written by genetix in DarK-CodeZ #5.
13
02.04.2013
ICI
genetix
First infector for ICI language written by genetix in DarK-CodeZ #5.
12
27.03.2013
AutoHotKey
genetix
First EPO infector for AutoHotKey written by genetix in DarK-CodeZ #5.
11
20.03.2013
APL
roy g biv
First infector for APL written by by roy g biv in DarK-CodeZ #5.
10
13.03.2013
Haskell
roy g biv
First infector for haskell written by by roy g biv in DarK-CodeZ #5.
9
03.02.2013
Pike source code
hh86
First Pike source code infector (written in assembler, EPO), by hh86 in DarK-CodeZ #5.
8
01.02.2013
urbiscript
genetix
First infector for urbiscript (language for robotics), by genetix in DarK-CodeZ #5.
7
24.01.2013
Erlang
genetix
First infector for Erlang (appender with EPO), by genetix in DarK-CodeZ #5.
6
22.01.2013
MySQL
herm1t
first infector for MySQL (MySQL stored procedures infector), by herm1t in DarK-CodeZ #5.
5
20.01.2013
R
genetix
first file infector (prepender) with R, by genetix in DarK-CodeZ #5.
4
16.01.2013
Scala
genetix
first file infector (EPO + light polymorphism) with Scala, by genetix in DarK-CodeZ #5.
3
15.01.2013
AWK
perforin
first file infector (prepender) with AWK, by by Perforin in DarK-CodeZ #5.
2
15.01.2013
Dart
genetix
first file infector (EPO) with Dart, by genetix in DarK-CodeZ #5.
1
14.01.2013
REXX
genetix
first file infector (EPO) with REXX, by genetix in DarK-CodeZ #5



Top100 programming languages
#
Programming
Language
type
script infector
(script only)
binary infector
(compiled only)
source code infector
(compiled only)
references
1
C
compiled
yes
yes
many many codes, for example MISTFALL by Z0MBiE or Linux.Lacrimae by herm1t. C source code infector has been written by for example by Mark Ludwig, released in "Giant Black Book of Computer Viruses"
2
Java
compiled
yes
yes
StrangeBrew or Beanhive by Landing Camel in CodeBreakers #4 and #5; or more recently, Java Infector by R3s1stanc3 in valhalla#3. roy g biv has written a Java source infector (with quine technique) in april 2013, source released in valhalla#4.
3
Objective-C
compiled
yes
yes
An comprehensive paper about abusing Objective-C has been written by nemo in Phrack#66 in 2009; it also contains a binary infector. roy g biv has written a Objective-C source infector (with quine technique) in may 2013, source released in valhalla#4.
4
C++
compiled
yes
yes
the language is an extention to C, so codes written in C can be compiled by C++ compilers. A specific c++ source infector has been written by roy g biv in june 2013.
5
C#
compiled
yes
yes
Win32.HLLP.Sharp by Gigabyte in coderz#3, MSIL.Croissant by roy g biv (native C#) in 29a#7 infects .NET exe files, Neoter by alcopaul in b8#3 infects C# sources
6
PHP
script
yes
PHP.Pirus by MaskBits in 29a#5 is something like a companion; php.faces by Kefi in rRlf#4 is a polymorphic file infector; php virus writing guide by SPTH in 29a#7 covers many viral techniques
7
(Visual) Basic
compiled
yes
yes
for VB: first fileinfector vbVirus by Murkry/IkX and Win32.Stupid by VicodinES in Codebreakers#4 (08.1998) or Visual Basic Source Code Infector by Lys Kovick in coderz#3 (05.2003)
8
Python
script
yes
no
yes
for example Python Virus Writing Tutorial VortX. In september 2013, roy g biv wrote a .py infector that even works when its compiled to .pyc (but does not infect them, so makes it a source-code infector).
9
Perl
script
yes
no
yes
comprehensive Perl tutorial by SnakeByte in 29a#6. Source-infector has been written by roy g biv in 2013.
10
JavaScript
script
yes
JS.Optiz by jackie twoflowers in Line Zer0 #2 in 1999; since then many many others, even with metamorphism
11
Ruby
script
yes
no
yes
first infector in rRlf#5 and comprehensive Ruby tutorial in 29a#8 by SPTH. Source code infector has been written by roy g biv in 2013.
12
Visual Basic .NET
compiled
yes
yes
VB00M in b8#2 infects binaries, and VB.NET Source Code Infector in b8#3 is a source code infector - both by alcopaul
13
LISP
script
yes
A nice LISP infector by herm1t
14
Pascal
compiled
yes
yes
Apparation by LordAsd for example. In April 2013 roy g biv wrote a Pascal source-code infector using quine technique, source released in valhalla#4.
15
Delphi
compiled
yes
yes
There has been a companion, a prepender and a source-code infector (detailed explaination) written in Delphi.
16
Ada
compiled
N/A
yes
A famous Pascal-like language. A simple overwriter has been done by SkyOut. roy g biv has written a source-infector (based on quine-technique) in April 2013, source released in valhalla#4.
17
MATLAB
script
yes
Bagoly by Positron in rRlf#7 or MicrophoneFever by SPTH in valhalla#1
18
LUA
script
yes
no
yes
lua.lame by kefi in EOF#3. Source-code infector has been written by roy g biv in 2013.
19
Assembly
compiled
yes
N/A
many many assembler viruses are arround, for instance MetaPHOR by The Mental Driller in 29a#6. There is one source-code overwriter in VLAD's april's-fool zine by Qark/VLAD, but to my knowlegde no real infector. Who accepts that obviously possible challenge?
20
Bash
script
yes
Bash infection tutorial by SnakeByte in 29a#5
21
PL/SQL
script
no
language for Oracle SQL database. is that even possible?
22
Transact-SQL
script
yes
T-SQL virus by Joseph Gama (2004)
23
SAS
script (?)
no
No idea about this language, but this explanation indicates that its potentially possible.
24
COBOL
compiled
no
yes
might be interesting, but the language is very weird... - in any way roy g biv wrote a quine-based source-code infector in September 2013.
25
Fortran
compiled
yes - N/A
yes
herm1t has written a companion using fortran, a real infector as well as a source code infector is yet to be done. roy g biv wrote a fortran source-code infector in august 2013, source released in valhalla#4.
26
R
script
yes
genetix wrote an R-infector in january 2013, released in DarK-CodeZ #5.
27
Scheme
script (?)
no
Seems to be a dialect of LISP
28
ABAP
script
yes
A proof-of-concept ABAP virus by ViriiWare has been released in 2000
29
Logo
compiled
N/A
no
A Logo worm was written by Gigabyte, no virus is known
30
Prolog
script
N/A
Used in artificial intelligence research. According to "A Pathology of Computer Viruses" (1989!!) an infector exists.
31
Erlang
script
yes
First infector for Erlang has been written by genetix in DarK-CodeZ #5.
32
Haskell
script/compiled
yes
no
yes
Haskell infector written for scripts (in DarK-CodeZ #5) in March 2013 and for the compiled version in May 2013 by roy g biv, source released in valhalla#4.
33
Scala
script
no
yes
A proof-of-concept infector (EPO with light polymorphism) has been written by genetix in DarK-CodeZ #5, a compact form of a Scala infector has been written by roy g biv as a quine in October 2013.
34
Q
script
no
Should be possible, but uses the functional paradigm, which is unusual.
35
D
compiled
no
yes
Looks like a simple object-oriented language. roy g biv has written a source-infector (based on quine-technique) in April 2013, source released in valhalla#4.
36
RPG (OS/400)
compiled
no
no
I have no idea about this language, but i think this might be hard because its for some non-common processors
37
Smalltalk
compiled
no
no
Object oriented language that is compiled to bytecode and interpreted by a virtual machine (as Java or MSIL)
38
Forth
compiled
yes
no
virus written in/for FORTH, by Light General in Infected Voice#11 in 1996
39
APL
script
yes
An infector for APL by by roy g biv in DarK-CodeZ #5.
40
Lego Mindstorms NXT-G
compiled (?)
N/A
no
It is possible, and maybe a non-public PoC exists for that for many years - but nothing public or confirmed. However, infecting your Lego-robots would be awesome!!!
41
ML
script (?)
no
another functional language that waits for the first hit.
42
Common Lisp
script (?)
no
LISP dialect
43
ActionScript
script
no
yes
Infected by roy g biv in october 2013, source released in valhalla#4
44
AWK
script
yes
Infected by by Perforin in DarK-CodeZ #5.
45
F#
script
yes
no
yes
comprehensive infection tutorial by SPTH in rRlf#7. A source-code infector has been written by roy g biv in 2013, source released in valhalla#4.
46
Scratch
script (?)
no
Programming language for kids :-)
47
PL/I
compiled (?)
no
no
very old language, looks simple
48
LabVIEW
compiled
no
no
It's used in many laboratories to automate devices and control experiments
49
Tcl
script
yes
According to Peter Szor's book, Gigabyte did a Tcl virus in 2003.
50
Alice
script (?)
no
Another function language
50+
(Visual) FoxPro
compiled
no
no
Shounds like an very simple language
50+
ABC
script
no
Looks like another simple BASIC-like language ready to infect
50+
ALGOL
compiled
no
yes
A very old and influential language. First source-code infector by roy g biv in April 2013, source released in valhalla#4.
50+
APEX
script (?)
no
Seems to be a language for Java-like programming language for the Force.com platform
50+
ATLAS
compiled
no
no
A langauge used my military :-)
50+
AutoLISP
script
yes
A LISP-dialect for AutoCAD, potentially used for industrial espionage. Examples are here.
50+
bc
script
no
A calculator language with C-syntax, if there is file-access I garantee you viruses are possible :-)
50+
BETA
compiled
no
no
An object-oriented language
50+
C shell
script
yes
Special UNIX shell, infected by Psychologic in April 2013 in 3F#1
50+
CFML
script
no
ColdFusion Markup Language, XLM based scripting language that runs on JVM, .NET framework and Google App Engine!
50+
CHILL
compiled
no
no
An Designed for use in telecommunication switches (the hardware used inside telephone exchanges)
50+
CL (OS/400)
script
no
Looks like a database language by IBM
50+
Clarion
script
no
An Another language for databases
50+
Clean
compiled
no
no
A purely functional computer programming language.
50+
Clojure
compiled
no
no
A functional language that produces JVM bytecode
50+
cT
compiled
no
no
Very recent development! Intel cT for multicore microchips that produces automatically parallelized programs
50+
Dart
script
yes
New web-programming language by google infected by genetix in DarK-CodeZ #5.
50+
Dylan
compiled
no
no
An Functional and object-oriented language
50+
Eifel
compiled
no
no
An object-oriented programming language
50+
Emacs Lisp
script
no
A LISP dialect used by GNU Emacs and XEmacs text editors ! Let's go for it! :-)
50+
Factor
script
no
A stack-based scripting language for video games.
50+
Fantom
compiled
no
no
C-based language for JVM and CLR - could allow cross-infectors for Java and .NET bytecode :-)
50+
Gambas
compiled
no
no
BASIC language in Linux for graphical applications
50+
Go
compiled
yes
yes
Language by Google from 2009. A trojan is known that has been partially written with Go. roy g biv has written a source-infector (based on quine-technique) in April 2013, source released in valhalla#4. A binary (linux ELF) infector has been released by TMZ in May 2015.
50+
Groovy
compiled
no
no
Language for JVM
50+
Icon
compiled
no
no
C-based language
50+
IDL
script
no
A nice langauge for data analysis.
50+
J
script
no
Multi-paradigm langauge, very likely a potential victim :-)
50+
JScript.NET
script
yes
A JScript/JScript.NET cross infector by hh86 in valhalla#1
50+
Ladder logic
compiled
no
no
Language presents code in graphical circuits :-o
50+
Lingo
script
no
A language for Adobe Director
50+
LPMud
compiled
no
no
C-based langauge for multi-player games
50+
Mathematica
script
yes
Mathematica proof-of-concept virus by SPTH
50+
Maya Embedded Language
script
yes
MEL.Monkey by wargame in Doom Riderz#1
50+
MUMPS
compiled
no
no
Very old language, originally for use in the healthcare industry
50+
Oberon
compiled
no
no
Very old originally for the Oberon OS by ETH Zurich
50+
OCaml
script
yes
famous functional language infected by genetix in DarK-CodeZ #5.
50+
occam
compiled (?)
no
no
Concurrent programming language
50+
OpenCL
compiled (?)
no
no
Executes across heterogeneous platforms consisting of CPUs, GPUs, DSPs ...
50+
Oz
compiled
no
no
Multiparadigm language
50+
PowerShell
script
yes
PoC viruses by SPTH in rRlf#6 (in beta-state, name was Monad) and Powershell infection tutorial by sk0r,Czybik in EOF#1
50+
S
script
no
statistical programming language, famous implementation is R
50+
SPARK
compiled
no
yes
language based on Ada. Source code infector for Spark written by roy g biv in june 2013, source released in valhalla#4.
50+
VBScript
script
yes
VBS.Rabbit by Lord Natas/CodeBreakers in Codebreakers#5 (06.1999)
50+
VHDL
compiled
no
yes
hardware description language for FPGAs and other devices, roy g biv wrote a source infector for it in june 2013, source released in valhalla#4.
50+
WebDNA
script
no
server-side script language, this looks like a good victim :-)
50+
x10
compiled
no
yes
Modern language designed by Thomas J. Watson Research Center, roy g biv wrote a source infector for it in june 2013, source released in valhalla#4.
50+
xBASE
script
no
Language for dBase databases
100+
Racket
script
yes
A self-replicator for the functional language Racket has been published by genetix here in June 2015.
100+
Rebol
script
yes
A self-replicator in Rebol has been published by genetix here in June 2015.
100+
Vala
compiled
yes
yes
Vala, source-code infector written by roy g biv in August 2013, source released in valhalla#4. A binary infector for Linux ELFs has been released by TMZ in December 2014.
100+
WinBatch
script+compiled
yes
no
yes
genetix wrote a WinBatch script virus in 2006 (here), source-code infector written by roy g biv in June 2013, source released in valhalla#4.
100+
SmallBASIC
compiled
no
yes
SmallBASIC, source-code infector written by roy g biv in May 2013, source released in valhalla#4.
100+
Mozilla's Rust
compiled
no
yes
Rust by Mozilla, source-code infector written by roy g biv in May 2013, source released in valhalla#4.
100+
Falcon
script
yes
First infector for Falcon written by hh86 in may 2013: source
100+
Neko
script
yes
First infector for Neko written by hh86 in may 2013: source
100+
FreeMat
script
yes
First infector for FreeMat written by hh86 in may 2013: source
100+
Scilab
script
yes
First infector for Scilab written by hh86 in april 2013: source
100+
GNU Octave
script
yes
First infector for the MATLAB dialect Octave written by genetix in DarK-CodeZ #5.
100+
ICI
script
yes
First infector for the ICI langage written by genetix in DarK-CodeZ #5.
100+
AutoHotKey
script
yes
First EPO infector written for AutoHotKey written by genetix in DarK-CodeZ #5 in march 2013.
100+
Pike
compiled
no
yes
A source-code infector for Pike has been written by hh86 in DarK-CodeZ #5.
100+
urbiscript
script
yes
First virus written for urbiscript (language for robotics) written by genetix in DarK-CodeZ #5.
100+
MySQL
script
yes
First virus written for MySQL databases written by herm1t in DarK-CodeZ #5.
100+
REXX
script
yes
The famous old Christmas tree worm was written in REXX scripts for IBM systems. A file-infector (with EPO) was done in january 2013 by genetix, in DarK-CodeZ #5.
100+
010 Editor script codes
script
yes
W32/1SC.To_Be by roy g biv in valhalla#1 (2011.08)
100+
Notepad++ Macro Language
script
yes
suck++ by Perforin in DC#3 (2010.12)
100+
WinHex Macro language
script
yes
WinHex.Vredesbyrd by izee in EOF#2 (2008.07)
100+
AutoIt
script
yes
AutoIt Virus Tutorial by genetix in DR#1 (2007.07)
100+
Ferite
script
yes
Ferite virus writing guide by wargame in EOF#1 (2007.01)
100+
FBSL
script
yes
FBSL infection tutorial by genetix in EOF#1 (2007.01)
100+
IDA scripting language
script
yes
ID10TiC by roy g biv in rRlf#7 (2006.07) and W32/IDA.Gattaca by Darkman and SPTH
100+
ODBGScript
script
yes
The script language used by OllyDebug has been infected by roy g biv (Volly)
100+
QuickBasic
compiled
N/A
yes
Very simple overwriting source infector using DOS instructions by SPTH (here) in 2002, a parasitic QBasic code using quine by roy g biv in 2013, source released in valhalla#4.
100+
Batch
script
yes
Many viruses have been written in Batch, old ones such as the Batalia series by Reminder (early 90s), or very recent complex implementations such as BAT.Polymer by roy g biv in valhalla#2
100+
MapBasic
script
yes
According to Peter Szor's book, a virus exists for the scripting language of MapInfo (Geo-Information Systems); it has been written by a russian vxer Kynel in 2003.
100+
HyperTalk
script
yes
According to Peter Szor's book, a virus exists for the simple language HyperTalk has been released in 1988.