Wirusy na Atari by Kaz 2010-10-22 10:20:40

Kolega kosa0 poruszył na Forum Atarum ciekawy temat wirusów komputerowych na małym Atari. Ciekawy, ponieważ zawsze owiany różnymi mitami i niedopowiedzeniami, zahacza o kwestie drażliwe dla niektórych, na styku tego co legalne i nielegalne, wywołuje temat odpowiedzialności uzdolnionych programistów oraz beztroski niedoświadczonych użytkowników...

Wirus to program komputerowy, który w sposób celowy powiela się bez zgody użytkownika, często prowadząc też szkodliwą dla użytkownika działalność - może to być zawieszenie komputera, kasowanie danych na nośnikach, etc. Potocznie, choć mylnie, o wirusie mówi się w każdej sytuacji, gdy program celowo szkodzi użytkownikowi, wykonuje jakieś przestępcze czy złośliwe działania, podczas gdy podstawową cechą wirusów jest duplikowanie się. Do zwalczania, usuwania i zabezpieczania się przed wirusami używane są programy antywirusowe.

Plaga wirusów nigdy na poważnie nie dotknęła użytkowników 8-bitowców. Tak naprawdę era wirusów rozpoczęła się gdzieś w pierwszej połowie lat 80-tych, a sprawa komputerowych mikrobów zyskała rozgłos w dobie popularności maszynek 16-bitowych wyposażonych w twarde dyski. Na 8-bitowcach istnienie wirusa często było traktowane jako sympatyczna egzotyka, a nawet powód do dumy (można było powiedzieć posiadaczom Amigi, ST czy peceta "my też mamy wirusy!"). Również na małym Atari wirusów nie ma zbyt wielu, można je policzyć na palcach ręki nieostrożnego drwala... :)





Wirus "TA" alias "Polish"

Najbardziej znany wirus - z powodu opisu w magazynie "Tajemnice Atari" z października 1992 roku - infekował pliki na dyskietkach. Wielki tytuł w najlepszej atarowskiej gazecie oznajmiał "Złapaliśmy wirusa!" (powyżej), a w artykule Janusz B. Wiśniewski zaserwował zdeasemblowany i skomentowany kod programu oraz opisał działanie wirusa:

"Wirus należy do grupy "niedestruktywnych", to znaczy, że nie wbudowano weń sekwencji niszczących zasoby lub układy komputera. Nie oznacza to jednak, że jest bezpieczny, powoduje bowiem zwiększenie rozmiaru plików, a więc prowadzi do nieoczekiwanego przepełniania dyskietek, co może stanowić pośrednią przyczynę różnorakich kłopotów. W wyniku uruchomienia zainfekowanego programu wirus zagnieżdża się na szóstej stronie, skąd śledzi dyskowe operacje WE/WY, czujny, by dołączyć swą kopię do każdego ZAPISYWANEGO programu. Właściciele magnetofonów mogą spać spokojnie. Wirus atakuje tylko pliki w formacie DOS i tylko na urządzeniu "D:". Jednak w przypadku skopiowania zarażonego programu na kasetę do użycia z COS-em lub "wykrzyknikiem", może przetrwać lata w stanie utajonym, czekając, aż kupisz sobie stację dysków, lub "sprzedasz" go koledze.

Bezpośrednim, zamierzonym przez autora, objawem działania wirusa jest zmiana reakcji komputera w przypadku naciśnięcia klawisza RESET. Wirus oducza radykalnie używania tego klawisza, przechodząc trwale do SELF TEST-u. Jedynym wyjściem po takim zdarzeniu może być wyłączenie komputera. Dla tych, którzy nie lubią tego robić (jak ja), prawdziwa to męka. Po takim doświadczeniu niechętnie sięgamy do RESET-u, z czego radość dla wirusa, bo RESET go zabija.

Ubocznym efektem działania intruza może być zawieszanie się komputera przy próbie umieszczenia programów na szóstej stronie (pamiętajmy, że przez znajdującego się tam wirusa przebiega cała obsługa urządzenia "D:"). Może też dać się zauważyć nieznaczne spowolnienie operacji dyskowych, lecz nie musi, bo wirus napisany jest z dużym znawstwem tematu. Czasami "lekki" konflikt na szóstej stronie może spowodować wadliwe działanie procedur WE/WY, a w konsekwencji zniszczenie zasobów na dyskietce."


Po niedługim czasie, w numerze kwietniowym "Tajemnic Atari" z 1993 roku, pojawił się program-szczepionka autorstwa K. Kowalskiego pod tytułem "Virus Killer":

"W TA 10/92 ukazał się artykuł, który bardzo mnie zainteresował. Był to artykuł JBW pt. "Złapaliśmy wirusa". Korzystając z tego, że miałem w domu wypożyczoną na okres ferii stację dysków, postanowiłem spróbować napisać program antywirusowy. Efektem tego zamierzenia jest prezentowany obok program Virus Killer. Jest to antywirusowy relokowalny kopier. Pisząc go wykorzystałem procedury zawarte w publikowanym na łamach TA programie TA Copy.

Po wczytaniu, VK (tak w skrócie nazywam swój program) sprawdza, czy w pamięci komputera znajduje się wirus. Jeśli go znajdzie, unieszkodliwia go, zmieniając wektor procedury CLOSE tak, aby wskazywał miejsce w procedurze wirusa, oznaczone przez JBW etykietą GOCL. Sprawia to, iż po wywołaniu procedury CLOSE wirus skacze do procedury CLOSE oryginalnego handlera. Po wczytaniu kopiowanego programu VK - sprawdza, czy jest on zawirusowany. Jeśli tak jest, to wówczas zmniejsza o długość wirusa wartość słowa, zawierającego długość aktualnie wczytanego pliku. Po zakończeniu tej operacji VK ponownie sprawdza zawirusowanie pliku. Ma to na celu całkowite odwirusowanie pliku, do którego wirus dołączył swój kod kilkakrotnie.

Odwirusowane pliki najlepiej zapisać na tej samej dyskietce, pod tą samą nazwą. Powoduje to jednoczesne skasowanie zawirusowanego pliku."


skoro, jak donosi prasa brukowa, możliwe jest przenoszenie się wirusów z komputera na człowieka...




Wirus "Buttonic"

Redakcja "TA" miała wiele zasług w popularyzacji wirusów na Atari... (wiem, brzmi dwuznacznie). W numerze 6-7 z 1993 roku jeden z czytelników o ksywie MAG (M) (jak się okazuje po latach to ksywa Marcina Grochowiny, kolegi Mono) zaprezentował ciekawszą wersję wirusa TA:

"Nie upłynęło wiele wody w rzekach od czasu ukazania się artykułu pana Janusza B. Wiśniewskiego pod tytułem "Złapaliśmy wirusa", gdy mój komputer zaczął się buntować i okazywać swe niezadowolenie:
- w zależności od humoru i pogody włączał lub wyłączał dźwięk klawiatury;
- w momentach najmniej odpowiednich "stawiał ekran na głowie" lub przestawał wyświetlać znaki w negatywie;
- buntował się podczas nagrywania czegokolwiek na dysk;
- wieszał się bezpowrotnie po użyciu klawisza RESET. Nie było cienia wątpliwości, że coś jest nie tak.

Po zmaganiach ze sprzętem i oprogramowaniem wyselekcjonowałem wirusa, będącego zapewne wynikiem ewolucji osobnika zaprezentowanego przez pana Wiśniewskiego. Pozwoliłem sobie nazwać go "Buttonic". Jest to bestia o wiele bardziej przebiegła i złośliwa od swego przodka... Ale zacznijmy od początku...

Po swym protoplaście "Buttonic" odziedziczył skórkę oraz narządy rozrodcze. W tej materii nic się nie zmieniło, więc ograniczę się do opisania organów podtrzymujących egzystencję wirusa oraz służących do zatruwania życia użytkownikowi ATARI."




Inne mutacje wirusa "TA"

Zapewne artykuł w "TA" natchnął wiele osób na samodzielne zmierzenie się z tematem wirusów. O wirusie TA zrobiło się bowiem głośno nawet za granicą, artykuł JBW pokazał się między innymi w "Megazine" numer 6, dzięki tłumaczeniu kolegi Pirx-a. W kolejnym "Megazine, numer 7, opublikowany został artykuł Jiri "Bewesoft" Bernaska, w którym analizował on wirusa, usprawnił go oraz przygotował antywirusa "Virus Scanner":

"It is on side two of this MegaZine! It's called "VIRUS SCANNER V1.0" or VSCAN.COM, and it was written by me. This program will look into memory and all the files on disk (with SpartaDOS only in current directory), and show where the virus is. It'll NEVER write on the disk - you must remove the virus yourself. (That's because there CAN be a legal program, which looks like a virus...)"

Również Andrzej "Andy" Kidaj wspomina w wywiadzie o tym, że natknął się na mutację wirusa znanego z TA i również napisał swoją wersję antywirusa:

"KZ: A co to za historia z antywirusem z „TA”, o którym mi wspominałeś?

AK: Jakoś pod koniec ukazywania się „TA” znaleziono wirusa. Niewiele robił, ale umiał sam się mnożyć. Dokładnie go opisano i artykuł znałem niemal na pamięć. Jakoś niedługo potem zaczęła mi szwankować stacja dyskietek - pod koniec wczytywania programu potrafiła zacząć formatować dyskietki. Oddawałem ją do serwisu kilka razy, nawet wymieniono mi ją na nową i... wciąż się to powtarzało. Wtedy mnie tknęło - WIRUS! I faktycznie. Zanim się zorientowałem, że to może być wirus, a nie wina stacji, minęło sporo czasu, chyba nawet z pół roku. Nie wiem, czy to był zmodyfikowany wirus, który był opisywany w „TA” czy zupełnie inny. Część kodu miał podobną, ale w sumie co można nowego wymyślić w kwestii duplikowania kodu? W każdym razie rozpisałem kod i napisałem program antywirusowy, ratując tym samym sporą część swojego oprogramowania. Wysłałem nawet spory artykuł na ten temat do „TA”, ale nie otrzymałem odpowiedzi, a sprawa ucichła.

KZ: Posiadasz jeszcze te materiały w sprawie wirusa?

AK: No skąd :) Robiłem to wszystko na Atari, artykuł też. Dyskietka poszła do „TA”. Jako, że przez długi czas odzewu nie było, a Atari odchodziło, to uznałem, że nie ma sensu trzymać tego i wywaliłem. Zostawiłem tylko antywirusa na wszelki wypadek, ale już wirusów nie miałem..."


...to i zabezpieczenia trzeba używać odpowiedniej miary.




Wirus Scorpio

W wywiadzie z Konradem "Scorpio" Rąpalskim dowiedzieliśmy się, że także Scorpio pisał własne wirusy:

Kaz: Czy to prawda, ze pisałeś jakieś wirusy?

KR: Hmmm, no nie wiem czy to się nadaje do publicznej wypowiedzi, ale tak. Dwa na Atari, dwa na PC. Co do tych ostatnich to odsyłam do „MKS Vir”: „Darnok” - totalne badziewie, ale cóż - pierwsze podrygi. „Pfeifer Virus” dedykowany pewnej nauczycielce, w „MKS Vir” jako Scorpio ileśtam (bodajże 1504 czy 1534). Pierwszy dyskowy, drugi plikowy.

Pierwszy atarowski był niestety prymitywny z założenia - brak u nas czegoś takiego jak CMOS. Przeważnie po użyciu gierki/programu RESET + zimny start, gorący tylko czasami i to raczej tylko z DOS-em. Drugi był wredniejszy, ale i nie bardzo przenośny, bo działał tylko z LDW2000 oraz CA2001 i siedział w stacji, a także stamtąd zarażał, więc resety Atari mu nie przeszkadzały, a nawet cieszyły, bo było duże prawdopodobieństwo, że teraz bootuje się nowy dysk, jeszcze nie zarażony. Tak więc na Atari odwrotnie niż na PC - pierwszy plikowy, a drugi dyskowy.

Kaz: Co skłoniło Cię do pisania wirusów? Nie wiedziałeś, że to niegodna ;) i nielegalna działalność?

KR: E tam zaraz niegodna :). Po prostu wprawki w asemblerze przy pierwszych moich pecetach, a że wirusa akurat... cóż wtedy jakaś taka moda była, a ja byłem młody i głupi. Co do drugiego pecetowego wirusa - to sam jakoś uciekł - prawdopodobnie za pomocą któregoś szkolnego kompa, czym zresztą chyba dowiódł jakiej takiej skuteczności. Tak mi się wydaje przynajmniej. Napisałem go pod negatywnym wpływem jednej mojej nauczycielki i nie było w planach jego wypuszczanie, ale oczywiście kumplom ze szkoły pokazywałem no i jakoś uciekł.

Co do wirusików atarowskich to po prostu nie było wcześniej takiego czegoś na 8-bitowce, nic oprócz wirusa na C64, który przechowywał się w stacji. Ale tam był procesor 6502 w środku to było łatwiej. Więc te moje wirusy to było coś w rodzaju „a widzicie, a jednak się da!”. Tego siedzącego w stacji to skrobnąłem już podczas zabawy z LDW2000.




Niemiecki wirus

Tajemniczy i niebezpieczny, a do tego niemiecki :). Tak reklamował swojego "wirusa" Radek "Karol" Karolak, autor gry "Professional Killers". Wirus tak naprawdę nie był wirusem (nie powielał się) tylko systemem zabezpieczającym grę przed podaniem nieprawidłowego hasła, w domyśle - znanego tylko legalnym użytkownikom. Historię odbezpieczenia Krzyżaka opisał Arek "Larek" Lubaszka w tym artykule, polecam, bo zabawne.



Po namierzeniu autora gry udało mi się w wywiadzie zapytać o kulisy powstania tego zabezpieczenia:

"KZ: Skoro wspominasz o piractwie, chciałbym zapytać o kulisy wprowadzenia zabezpieczenia zastosowanego w „PK”? Czemu to miało służyć? A może przypomni Ci się, skąd zaczerpnąłeś program zabezpieczający, bo nie wygląda on na pisany przez Ciebie...

RK: Proszę potraktować moje słowa jako "prawdopodobne, ale nie 100% pewne". Grę pisałem około 3 dni, a zrobienie tego zabezpieczenia zajęło mi około godziny i po tylu latach naprawdę słabo to pamiętam. Wydaje mi się, że było to tak. Stali klienci dostawali program z ostrzeżniem, ale bez tego dodatkowego programiku. Ale ponieważ był to okres na giełdzie, gdy malał już popyt na programy dla Atari, to relacje z "konkurencją" były dość napięte. Obawiajac się, słusznie zresztą, że kupią mój program przez podstawionego klienta, naprędce zrobiłem coś, żeby ich nieco opóźnić. Wydaje mi się, że ten programik, który zastosowałem, nie był w założeniu trojanem. Możliwe, że był to program narzędziowy, robiący "coś", ale przypadkowo okazało się, że odpalenie go w określonych okolicznościach może być groźne dla kompa, względnie uszkodziłem go, grzebiąc po sektorach, gdzie był zapisany, co objawiło jego "dodatkową funkcjonalnością" :) Nie jestem w stanie tego odtworzyć, bo starannie pozacierałem ślady oryginalnej nazwy tego programu.

Przepraszam wszystkich, którzy ucierpieli z tego powodu, bo na pewno byłem świadom konsekwencji działania tego softu. Zresztą, pewne doświadczenia wyniesione z tego zdarzenia zaowocowaly ostatnią grą, jaką napisałem na PC, ale nie mogłem znaleść wydawcy. Gierka nosiła nazwę "Rosyjska Ruletka", a stawką w niej były pliki na twardym dysku. W przypadku przegranej program losowo kasował dowolne pliki z HDD."




Wirus TeddyBoara

Kolega TeddyBoar poinformował, że ma jeszcze jednego wirusa, zapisującego się w boot sektorze dyskietki, pozwalającego na odpalenie dyskietki określoną ilość razy, a potem znienacka ją czyszczący. Oczywiście jak na wirusa przystało jest rezydentny i infekuje kolejne niezabezpieczone dyskietki w stacji. Pliki dyskietek z wirusem i antywirusem znajdziecie na forum, post numer 9.

To tyle w tym temacie - proszę o wszelkie inne ślady, informacje, opisy. Warto ocalić także ten kawałek historii.
GZP 2010-10-22 15:37:54

"Rosyjska Ruletka"? Kiedy to było? Parę miesięcy temu widziałem na sieci grę o takich założeniach na PC, chwalono się, że wcześniej nikt na taki pomysł nie wpadł.

kosa0 2010-10-22 17:42:03

Swietny artykul Kaz :-)