Unix C Compiler (Bell Labs Experiment)
Ken Thompson implements compiler backdoor demo
In his 1983 Turing Award lecture (published 1984), Ken Thompson described an experiment he likely implemented years earlier at Bell Labs. He modified the Unix C compiler (`cc`) binary to insert a backdoor into the `login` program during compilation. The compiler was also modified to recognize its own source code and inject both the `login` backdoor logic and the self-replicating compiler modification into any newly compiled compiler binary, even from clean source. This practical demonstration highlighted the fundamental vulnerability of trusting software built with potentially compromised toolchains.
- Date
- 1983-07-01 to 1983-08-01
- Category
- Open Source
- Target Surface
- Build/CI
- Insertion Phase
- source
- Impact
- Benign
- Cause
- Sabotage
What Was Affected
Package
Unix C Compiler (Bell Labs Experiment)
LanguageC / Assembly
ComponentCompiler
Artifact typebinary archive
Domain typesource host
Compromised Versions
- Early Unix versions (Bell Labs internal)
Incident Context
- Motive
- Experimentation/Notoriety
- Attribution
- Author
- Transitive
- Yes
- Observed Duration
- 31 days
Evidence
Compromised Artifacts
- unix:/usr/bin/cc
- unix:/bin/login
Current Artifacts and Analysis
External References
Source Data
Source record: oss/cpp/meta.yaml