
L’ingegnere informatico in pensione Martin K. Martin ha recentemente scoperto un bug nel codice di elaborazione del leggendario gioco per computer “Lunar Lander”, creato nel 1969.
Il gioco consiste nel far atterrare un modulo lunare sulla superficie della Luna. La scoperta è stata fatta mentre studiava la strategia ottimale per l’atterraggio del modulo con il massimo risparmio di carburante.
La prima versione del gioco “Lunar Lander” (dall’inglese “Lunar Module”) è stata scritta dal diciassettenne Jim Storer su un minicomputer PDP-8 utilizzando il linguaggio di programmazione FOCAL. Il testo del gioco mostrava solo gli aggiornamenti di stato relativi alla posizione del modulo lunare durante l’atterraggio sulla superficie lunare. I giocatori dovevano gestire attentamente il consumo di carburante per garantire un atterraggio morbido, prendendo decisioni critiche ogni 10 secondi sulla quantità di carburante bruciato.
Questo gioco primitivo ha aperto la strada alle versioni future. Una versione grafica apparve nel 1974 e un gioco arcade di Atari nel 1979, grazie al quale “Lunar Lander” divenne ampiamente noto. Per il 40° anniversario del primo sbarco dell’uomo sulla Luna nel 2009, un appassionato ha trovato l’autore del gioco originale, Jim Storer, lo ha intervistato e ha raccontato la storia della creazione di Lunar Lander. Storer ha successivamente pubblicato il codice sorgente del gioco sul suo sito web.
Dopo aver analizzato il codice nel 2024, l’esperto di intelligenza artificiale ed ex ricercatore del MIT Martin K. Martin ha identificato un bug nell’implementazione dei calcoli fisici. Il bug è stato attivato quando si tentava di atterrare nel modo più efficiente possibile utilizzando la tecnica della “frenata suicida”, nota tra i fan del gioco Kerbal Space Program. Questa strategia prevede la caduta libera per aumentare la velocità e quindi l’accensione dei motori all’ultimo momento per frenare in sicurezza.
“Recentemente ho studiato il consumo ottimale di carburante per l’atterraggio più morbido con un’elevata spinta residua”, ha scritto Martin sul suo blog. – Inaspettatamente, si è scoperto che la strategia teoricamente migliore non ha funzionato. Il gioco pensava erroneamente che il modulo non toccasse la superficie, quando in realtà ciò accadeva. Mentre approfondivo, sono rimasto stupito dalla complessità della fisica e dei calcoli numerici del gioco. Alla fine ho trovato un bug: l’operazione di divisione per due mancante, che a quanto pare era passata inosservata per quasi 55 anni”.
Nonostante l’utilizzo di una strategia di atterraggio apparentemente perfetta, il gioco riportava in modo incoerente che il modulo mancava completamente la superficie lunare. Incuriosito da questa anomalia, Martin esaminò il codice sorgente e scoprì che l’algoritmo di atterraggio era basato sulla fisica avanzata per l’epoca, inclusa l’equazione di Tsiolkovsky della propulsione a razzo e la serie di Taylor.
Come menzionato nella citazione sopra, la radice del problema risiede in un banale errore di calcolo: l’assenza di divisione per due nella formula per calcolare la traiettoria del modulo lunare. Questa omissione apparentemente insignificante ebbe gravi conseguenze, portando ad un calcolo errato del tempo prima dell’atterraggio e dell’atterraggio stesso. Nonostante l’errore, Martin rimase colpito dal fatto che Storer, da studente delle superiori, fosse in grado di incorporare concetti matematici avanzati nel suo gioco, un risultato significativo ancora oggi.
Contattando lo stesso Storer, Martin apprese che il padre dell’autore di “Lunar Lander” era un fisico e aiutò suo figlio a ricavare le equazioni per la simulazione del gioco.
Sebbene le persone giochino da anni al gioco di Storer con il bug, ciò dimostra che il realismo non è sempre la parte più importante di un’esperienza interattiva coinvolgente. E, fortunatamente per Aldrin e Armstrong, l’effettiva missione lunare Apollo non ha subito un simile errore.
Ti è piaciuto questo articolo? Ne stiamo discutendo nella nostra Community su LinkedIn, Facebook e Instagram. Seguici anche su Google News, per ricevere aggiornamenti quotidiani sulla sicurezza informatica o Scrivici se desideri segnalarci notizie, approfondimenti o contributi da pubblicare.

CulturaC’è questa idea sbagliata, un po’ romantica volendo, per cui il ransomware è “roba da IT”: qualche server in crisi, due notti in bianco, poi si riparte e fine… La realtà, soprattutto per un’azienda quotata…
DirittiNel precedente contributo abbiamo esplorato come la posizione di garanzia del professionista della cybersecurity si scontri con fattispecie classiche come l’accesso abusivo. Tuttavia, nella mia esperienza professionale e accademica, riscontro spesso una zona d’ombra ancora…
Cyber NewsAncora una volta Microsoft si è vista obbligata ad effettuare una rapida correzione di alcune falle. L’azienda ha rilasciato patch non programmate per Microsoft Office, risolvendo una pericolosa vulnerabilità zero-day già sfruttata in attacchi informatici.…
Cyber NewsLa recente scoperta di una vulnerabilità nella piattaforma AI di ServiceNow ha scosso profondamente il settore della sicurezza informatica. Questa falla, caratterizzata da un punteggio di gravità estremamente elevato, ha permesso ad aggressori non autenticati…
Cyber NewsLa scoperta è avvenuta casualmente: navigando sulla versione web mobile di Instagram, Jatin Banga ha notato che i contenuti di alcuni profili privati erano visibili senza alcuna autorizzazione. Analizzando il traffico dati, ha individuato la…