Кіріспе
Өзін-өзі көбейтіп, тарататын зиянды бағдарламаның кодтамасы. Компьютерлік құрт – бұл өзін-өзі көбейтіп, басқа компьютерлерге таралатын дербес зиянды бағдарлама. Ол көбінесе компьютерлік желі арқылы таралады, мақсатты компьютердегі қауіпсіздік кемшіліктерін пайдаланып оған кіреді. Бұл машинаны басқа компьютерлерді сканерлеу және зарарлау үшін хост ретінде пайдаланады. Осылайша жаңа құрттар тарағаннан кейін, құрт осы компьютерлерді хост ретінде пайдаланып, басқа компьютерлерді сканерлеп, зарарлауын жалғастырады, және бұл цикл қайталана береді. Компьютерлік құрттар хост-бағдарламаларсыз көшіру үшін рекурсивті әдістерді қолданады және экспоненциалды өсудің мүмкіндіктерін пайдаланып таралады, соның арқасында қысқа мерзім ішінде көптеген компьютерлерді бақылайды және зарарлайды. Құрттар желіге кем дегенде зиян келтіреді, тіпті өткізу қабілетін (bandwidth) тұтыну арқылы болса да, ал вирустар көбінесе мақсатты компьютердегі файлдарды бұзады немесе өзгертеді. Көптеген құрттар тек таралу үшін жасалған және олар өтетін жүйелерді өзгертуге тырыспайды. Дегенмен, Моррис және Майдум құрттары көрсеткендей, тіпті "жүксіз" құрттар да желілік трафикті арттыру және басқа да күтпеген салдарлар тудыру арқылы үлкен бұзылуларға әкелуі мүмкін.
coding of a worm
A computer worm is a standalone malware computer program that replicates itself in order to spread to other computers. It often uses a computer network to spread itself, relying on security failures on the target computer to access it. It will use this machine as a host to scan and infect other computers. When these new worm invaded computers are controlled, the worm will continue to scan and infect other computers using these computers as hosts, and this behaviour will continue. Computer worms use recursive methods to copy themselves without host programs and distribute themselves based on exploiting the advantages of exponential growth, thus controlling and infecting more and more computers in a short time. Worms almost always cause at least some harm to the network, even if only by consuming bandwidth, whereas viruses almost always corrupt or modify files on a targeted computer. Many worms are designed only to spread, and do not attempt to change the systems they pass through. However, as the Morris worm and Mydoom showed, even these "payload free" worms can cause major disruption by increasing network traffic and other unintended effects.
Тарих
"Құрт" термині алғаш рет Джон Бруннердің 1975 жылы жарық көрген "Шоктауылқылы саяхатшы" романында қолданылды. Романда Никлас Хафлингер ұлттық электрондық ақпарат желісін басқаратын, халықты біртектілікке итермелейтін ықпалды тұлғаларға қарсы кек алу мақсатымен деректерді жинауға арналған құртты жобалап, іске қосады. "Сіздің желіңізде бұрын-соңды болмаған ең ірі құрт қашып жүр, ол оны бақылауға тырысатын кез келген әрекетті автоматты түрде жояды. Мұндай қатайған басы мен ұзын құйрығы бар құртты ешқашан көрген емеспіз!" "Сосын оған жауабы келді, ол жартылай күлді. Флюкнер дүкендегі ең көне әдістердің бірін пайдаланып, континенттік желіге өзін-өзі көбейтіп, мүмкін, ірі корпорациядан "қарыз алынған" айыптау тобы басқарған ленталық құрттарды жіберді. Ол оның кредиттік коды пернетақтаға енгізілген сайын бір түйінден екінші түйіндікке ауысатын еді. Мұндай құртты жоюға бірнеше күн, кейде апталар да қажет болуы мүмкін". Морриске қатысты апелляциялық процесте АҚШ-тың апелляциялық соты әр орналымнан құртты жою құны 200 доллардан 53 000 долларға дейін жетеді деп бағалады; осы жұмыс CERT үйлестіру орталығы мен Phage пошталық тізімінің құрылуына түрткіс болды. Моррис 1986 жылғы Компьютерлік алаяқтық және зәулімдік туралы заң бойынша сотталған және кінәлі деп табылған алғашқы адам болды. Conficker – 2008 жылы табылып, негізінен Microsoft Windows операциялық жүйелерін бағытталған компьютерлік құрт. Бұл құрт 3 түрлі тарату стратегиясын қолданады: жергілікті іздеу, көршілік іздеу және жаһандық іздеу. Бұл құрт гибридтік эпидемия деп есептелді және миллиондаған компьютерлерге әсер етті. "Гибридтік эпидемия" термині оның таралуы үшін қолданған үш бөлек әдісіне байланысты пайдаланылды, олар кодты талдау арқылы анықталды.
Залалдар
Құртты таратудан басқа мақсатта жасалған кез келген код әдетте "жүктеме" деп аталады. Типтік қауіпті жүктемелер хост-жүйедегі файлдарды (мысалы, ExploreZip құрты) жоюға, құпия құжаттар немесе парольдер сияқты деректерді ұрлауға немесе қорқыту бағдарламалық жасақтама шабуылында файлдарды шифрлауға мүмкін. Кейбір құрттар артқы есік орнатады. Бұл құрт авторына компьютерді "зомби" ретінде қашықтан басқаруға мүмкіндік береді. Мұндай машиналардың желілері көбінесе ботнеттер деп аталады және спам жіберу немесе DoS шабуылдарын жүзеге асыру сияқты түрлі қауіпті мақсаттар үшін кеңінен қолданылады. Кейбір арнайы құрттар өнеркәсіптік жүйелерге бағытталған шабуылдар жасайды. Stuxnet негізінен LAN және жұқтырылған USB-дискілер арқылы таратылды, себебі оның нысаналары ешқашан интернет сияқты сенімсіз желілерге қосылмаған. Бұл вирус химиялық, электр энергиясын өндіру және тарату компанияларының әлемнің әртүрлі елдерінде қолданатын өндірістік басқару бағдарламалық жасақтамасын жоя алады. Stuxnet жағдайында Иран, Индонезия және Үндістан ең көп зардап шекті. Ол зауыттағы басқа жабдықтарға "бұйрықтар беру" және осы бұйрықтарды анықтаудан жасыру үшін пайдаланылды. Stuxnet Windows жүйелерінде және Siemens SIMATICWinCC жүйелеріндегі өнеркәсіптік машиналардың кіріктірілген бағдарламаланатын логикалық контроллерлеріне шабуыл жасау үшін бірнеше осалдықтарды және төрт түрлі "күн нөлдік" қауіпсіздікті (мысалы:) пайдаланды. Бұл жүйелер желіден тәуелсіз жұмыс істесе де, егер оператор вирус жұқтырған дискіні жүйенің USB интерфейсіне қосса, вирус ешқандай қосымша операциялық талаптарсыз немесе сұраусыз жүйені басқара алады.
Жақсы ниетпен құрттар
Көмекші құрт немесе антиқұрт – бұл оның авторы пайдалы деп санайтын қызметті атқаруға арналған құрт, бірақ міндетті түрде оны іске қосып отырған компьютердің иесінің рұқсатымен емес. Xerox PARC-те құрттарды зерттеудің алғашқы кезеңдерінен бастап, пайдалы құрттар жасауға әрекеттер жасалып келді. Бұл құрттар Джон Шох пен Джон Хуппқа Xerox Alto компьютерлерінің желісінде Ethernet принциптерін сынауға мүмкіндік берді. Сол сияқты, Nachi құрттар отбасы Microsoft веб-сайтынан қателерді түзетуге арналған жаңартуларды жүктеуге және орнатуға тырысты, осы қателерді пайдаланып, хост-жүйедегі осал жерлерді жоюға ұмтылыс жасады. Іс жүзінде, бұл жүйелерді қорғаса да, ол желілік трафиктің көбеюіне, түзету процесінде машинаның қайта іске қосылуына және компьютер иесінің немесе пайдаланушының келісімінсіз жұмыс істеуге әкелді. Қауіпсіздік сарапшылары барлық құрттарды зиянды бағдарлама ретінде қарастырады. Бұл тәсілдің тағы бір мысалы – Roku OS-тің бір қатесін түзету, бұл Roku OS-тің экран сақтағыш арналарына жаңарту арқылы түбірлік құқықтарды алуға мүмкіндік берді, ал экран сақтағыш telnet-ке қосылуға тырысып, құрылғыны түзетуге ұмтылды. Бір зерттеу OSI моделінің екінші қабатында (деректер байланысы қабаты) жұмыс істейтін алғашқы компьютерлік құртты ұсынды, ол топологиялық ақпаратты, мысалы, мазмұндық адрестік жад (CAM) кестелерін және коммутаторларда сақталған Spanning Tree ақпаратын пайдаланып, кәсіпорын желісі толығымен қамтылғанға дейін осал түйіндерді анықтауға және таратуға қолданылды. Code Red, Blaster және Santy құрттарының зиянды әсерлеріне қарсы антиқұрттар қолданылды. Welchia – пайдалы құрттың мысалы. Blaster құртының пайдаланған осал жерлерін пайдаланып, Welchia компьютерлерді жұқтырып, пайдаланушылардың келісімінсіз Windows үшін Microsoft қауіпсіздік жаңартуларын автоматты түрде жүктеуді бастады. Welchia жаңартуларды орнатқаннан кейін жұқтырған компьютерлерді автоматты түрде қайта іске қосады. Бұл жаңартулардың бірі – бұл осал жерді жойған жаңарту.