Wersja 0.1.0 programu AmiGuard nie rozpozna na własną rękę ani jednego amigowego wirusa. Autorzy piszą to w notach wydania czarno na białym: projekt nie ma na razie żadnych niezależnie zweryfikowanych sygnatur. Dlatego razem z pierwszym wydaniem poszła do sceny prośba. Przyślijcie zarażone dyskietki.
Za projektem stoi firma Ploos AS, a wydanie podpisuje Per Gustav Ousdal. Repozytorium na GitHubie założono 6 września, wersja 0.1.0 wyszła 13 września, ostatni push jest z 17 września. Commitów jest 278, wszystkie z jednego konta. Licencja MIT, źródła otwarte, a paczka LhA waży niecałe 22 kilobajty.
AmiGuard: wymagania i możliwości wersji 0.1.0
Celem jest goły sprzęt z drugiej połowy lat 80.: Kickstart 1.2, procesor 68000 i 512 KB pamięci. W ścieżce wykonania nie ma żadnego wywołania, które istnieje dopiero w OS 2.x, a program startuje z CLI. Przed wydaniem przeszedł testy w FS-UAE na profilu A500 z Workbenchem 1.2 i 512 KB Chip RAM. Na takiej maszynie pierwsze wirusy dopiero się rozkręcały.
Skaner czyta bootblock i pliki, niczego przy tym nie zapisując, a pliki wykonywalne klasyfikuje po hunkach. Na okres przejściowy potrafi też zawołać xvs.library, czyli bibliotekę, do której przeniesiono kiedyś cały kod rozpoznawania z VirusZ i na której opierają się też Virus_Checker i Virus_Executor. Georg Wittmann wciąż ją rozwija, notka copyright sięga 2025 roku. Ale wynik z xvs dostaje u AmiGuarda osobną etykietę XVS-DETECTED. Słowa INFECTED program używa wyłącznie dla tego, co sam zweryfikował, a na razie nie zweryfikował niczego.
Podoba mi się ta pedanteria. Autorzy nie chcą przepisywać do swojej bazy cudzych nazw wirusów na wiarę: próbka ma przejść analizę statyczną, przegląd człowieka i uruchomienie w izolacji na natywnej Amidze, zanim zostanie uznana za szkodnika. To wolniejsza droga, ale przy każdej sygnaturze będzie wiadomo, skąd się wzięła.
Jak wysłać zarażoną dyskietkę do AmiGuarda
Próbki przyjmuje formularz na stronie amiguard.ploos.no. Chodzi o oryginalne obrazy ADF, pliki wykonywalne, bootblocki, archiwa z czasów BBS-ów, dyskietki z gazet i prywatne kolekcje. Najlepiej cały obraz dyskietki, bo zachowuje bootblock i resztę kontekstu. I bez poprawiania: autorzy proszą, żeby próbki nie odwirusowywać, nie przepakowywać i nie zmieniać jej nazwy, bo liczy się każdy bajt. Jeśli jakiś skaner coś na niej znalazł, warto dopisać nazwę wirusa i wersję programu.
Serwis działa w jedną stronę. Niczego nie udostępnia z powrotem, nie zapamiętuje oryginalnej nazwy pliku, a zapisuje losowy identyfikator, skrót SHA-256, rozmiar i czas odbioru. Limit to 16 MiB na próbkę, a niesklasyfikowane zgłoszenia leżą zwykle do 90 dni. Formularz przyjmuje też materiał z Atari ST/STE i z klasycznych Maców na 68k. I jedna przestroga prosto z readme: podejrzanej dyskietki nie odpala się „na próbę” na zwykłej Amidze ani w emulatorze, do którego są podpięte ważne, zapisywalne dyski.
Pierwszy wirus na Amigę: SCA i Byte Bandit
Pierwszy był SCA, w listopadzie 1987 roku. Podpisała go szwajcarska grupa crackerska Swiss Cracking Association, a co piętnastą kopię po ciepłym resecie wyświetlał tekst zaczynający się od „Something wonderful has happened Your AMIGA is alive !!!”. Danych sam w sobie nie niszczył, za to dopisywał się do każdej włożonej dyskietki bez zabezpieczenia przed zapisem. Gry z własnym bootblockiem po takiej wizycie przestawały startować.
Według szacunków przytaczanych przez Wikipedię SCA siedział gdzieś w kolekcji około 40% użytkowników Amigi. Jego autorzy wypuścili zresztą pierwszy amigowy antywirus, który usuwał ich własne dzieło. Śladem SCA poszli inni, już mniej łagodni, i tak pojawiły się Byte Bandit i Byte Warrior.
Tę trasę znam z autopsji: dyskietka z giełdy na Atomku, X-Copy w domu, kopie dla kolegów. Tą samą trasą jechało wszystko, co siedziało w bootblocku. Kto przegrywał zdobycze na prawo i lewo, robił za kuriera, czy tego chciał, czy nie.
Materiał do badań wciąż istnieje. Stare dyskietki czytają się po latach lepiej, niż obiecywali producenci, o czym pisałem przy trwałości dyskietek 5,25 cala, więc pudła z giełd i z gazet to realne źródło próbek. Do zrobienia obrazu wystarczy czytnik strumienia magnetycznego w rodzaju Greaseweazle'a.
Nie ukrywam, że sam jestem ciekaw, ile znanych odmian AmiGuard odtworzy z prywatnych pudeł, a ile próbek wyjdzie z archiwów, o których nikt dotąd nie słyszał.
