News (NO)

Programmer som avslutter tilfeldige prosesser på datamaskinen dukker opp igjen og kan føre til at systemet krasjer

computador travado
computador travado - Ei Ywet/Shutterstock.com

En kategori av farlige applikasjoner, designet for å tilfeldig avslutte prosesser på datamaskiner, har igjen fått fremtredende plass på internett. Conhecidos som “prosessrulett”, fortsetter disse programmene å fullføre aktive oppgaver til operativsystemet krasjer fullstendig, noe som resulterer i en total krasj eller den populære “blå skjermen”.

Konseptet er ikke nytt og har sirkulert i utviklermiljøer i årevis som en slags risikabel teknisk utfordring. Contudo, en ny versjon utviklet ved hjelp av kunstig intelligens, har gjenoppstått debatten om grensene for programvareeksperimentering og risikoene forbundet med disse verktøyene, som er tilgjengelige for Windows, macOS og Linux.

Selv om den er laget uten intensjonen om å være skadelig programvare, kan den praktiske effekten være ødeleggende for intetanende brukere, forårsake tap av ulagrede data og potensiell filkorrupsjon. Skaperne selv advarer om at utførelse utelukkende må skje i kontrollerte miljøer, for eksempel virtuelle maskiner, for å unngå permanent skade på hovedsystemet.

Teletrabalho, home office ou trabalho remoto.
Marcelo Camargo/Byrå Brasil

Hva er prosessrulett

Konseptet “prosessroulett” dukket opp som en teknisk spøk og en ekstrem stresstest for operativsystemer. Den sentrale ideen er enkel og farlig: lag et skript som tilfeldig velger en prosess som kjører på datamaskinen og avslutter den kraftig, og gjentar handlingen i en kontinuerlig syklus.

Uforutsigbarhet er nøkkelelementet. Programmet kan avslutte alt fra en ufarlig oppgave som Notisblokk til en kritisk systemtjeneste som vindusbehandleren (explorer.exe på Windows), som fører til en umiddelbar krasj og behovet for en tvungen omstart av datamaskinen.

[[MVG_PROTECTED_BLOCK_0]

Denne praksisen lar programmerere utforske motstandskraften og interne avhengigheter til operativsystemer. Ved å observere hvilke prosesser som forårsaker feil når de avsluttes, er det mulig å bedre forstå programvarearkitekturen, om enn på en svært destruktiv og ikke anbefalt måte.

Analogien med russisk rulett er direkte: med hver “runde” vet ikke brukeren hvilken prosess som vil bli “skutt”, og spillet avsluttes først når en viktig komponent blir truffet, og stopper hele maskinen. Derfor er den enstemmige anbefalingen å aldri kjøre slike verktøy på en datamaskin for personlig eller profesjonell bruk.

Den nye AI-drevne versjonen

Nylig introduserte utvikleren kjent som IceSolst Task Unmanager, en moderne versjon av konseptet, laget ved hjelp av Cursor AI-kodeplattformen. Este ny applikasjon automatiserer ikke bare avslutningen av prosesser med deres ID (prosessidentifikator), men legger også til et lag med “gamification” til opplevelsen, noe som gjør den mer interaktiv og visuelt tiltalende, noe som bidro til dens raske viralitet på sosiale medier.

Verktøyet har et grafisk grensesnitt som viser prosesser som lukkes i sanntid og inkluderer humoristiske elementer, for eksempel en fiktiv intern butikk. Nessa butikk, kan brukere “kjøpe” simulert skadelig programvare ved å bruke virtuelle mynter som tjenes ved hvert vellykket spinn. Prosjektet ble delt på utviklerplattformer og spredte seg raskt, og genererte tusenvis av kommentarer og diskusjoner om kreativiteten og uansvarligheten til ideen. Enkelheten som AI hjalp til med å lage kode har også reist debatter om fremtiden for programvareutvikling og etikken bak å lage potensielt skadelige verktøy, selv om det er for underholdnings- eller eksperimenteringsformål.

Hvordan disse verktøyene fungerer i praksis

Den tekniske funksjonen bak “prosessroulett”-applikasjoner er basert på bruk av native kommandoer og forhøyede tillatelser til selve operativsystemet for å manipulere aktive prosesser. I Windows-miljøet, for eksempel, påkaller skript ofte system-API-funksjoner, for eksempel “TerminateProcess”, som tvinger umiddelbar avslutning av en oppgave uten å tillate den å lagre sin tilstand eller utføre oppryddingsrutiner. På systemer basert på Unix, som Linux og macOS, er den tilsvarende kommandoen “kill”, vanligvis brukt med signalene “SIGTERM” (for en standard avslutning) eller “SIGKILL” (for en umiddelbar og ubetinget avslutning). Kjernen i programmet består av en algoritme som først tar listen over alle kjørende Processo IDer (PIDs), filtrerer ut noen essensielle prosesser for ikke å krasje umiddelbart (i noen versjoner), og deretter velger et tilfeldig mål fra den listen for å utføre termineringskommandoen. Den tilfeldige naturen sikrer at hver utførelse er unik og kan vare i sekunder eller minutter, avhengig av flaks og hvilke prosesser som blir truffet først. Algumas-implementeringer gir et snev av utfordring, og krever at brukeren skriver inn en spesifikk setning, for eksempel “jeg er en feiging,” for å bryte syklusen før total kollaps.

Historiske distribusjoner på GitHub

Til tross for den nylige oppmerksomheten, har flere versjoner av “prosessrulett” vært tilgjengelig på offentlige depoter som GitHub i nesten et tiår. En av de eldste postene dateres tilbake til 2016, da utvikler Jamis Buck publiserte en flerspillerversjon av konseptet.

I denne implementeringen koblet flere deltakere til en sentral server. En av dem fungerte som en “croupier”, og startet rundene som utløste avslutning av prosesser samtidig på alle tilkoblede maskiner, og forvandlet stresstesten til et risikabelt kollektivt spill.

En annen populær variant ble opprettet av brukeren Codebox for omtrent fem år siden. Trata er et enklere skallskript, som lar brukeren definere antall runder før prosessen starter, og samler poeng for hver oppgave som er fullført før systemet krasjer.

De virkelige farene for den gjennomsnittlige brukeren

Å kjøre noen av disse verktøyene på en vanlig maskin utgjør en betydelig og umiddelbar risiko. Den mest åpenbare faren er tap av ulagrede data, ettersom applikasjoner som tekstredigerere, regneark eller opprettelsesprogramvare lukkes brått uten noen forvarsel.

I tillegg til tap av arbeid, er det en risiko, om enn liten, for systemfilkorrupsjon. Hvis en kritisk prosess blir avbrutt under en diskskriveoperasjon, kan den etterlate filer i en inkonsekvent tilstand, som i sjeldne tilfeller kan kreve manuell gjenoppretting eller til og med reinstallering av operativsystemet.

Utbyggermiljøets syn

Den tilbakevendende populariteten til disse verktøyene reflekterer en dualitet i programmeringskulturen. På den ene siden representerer de teknisk nysgjerrighet og ønsket om å utforske grensene for programvare på en praktisk måte. På den annen side blir de kritisert for å oppmuntre til praksiser som, selv om de er pedagogiske for noen, kan være ødeleggende hvis de brukes uten tilbørlig kunnskap og forsiktighet, spesielt av nybegynnere som kanskje ikke forstår alvoret i risikoen involvert.

Trygge alternativer til systemtesting

For utviklere og entusiaster som er interessert i å teste stabiliteten til systemene deres, finnes det mye sikrere og mer profesjonelle alternativer. Ferramentas benchmarks og stresstester, som Prime95 for CPU og FurMark for grafikkort, er designet for å presse maskinvaren til sine grenser på en kontrollert måte, uten tilfeldig terminering av prosesser.

For eksperimentering med potensielt ustabil eller farlig programvare, er bruk av isolerte miljøer standard praksis. Virtualisering Softwares som VirtualBox og VMware, eller containerteknologier som Docker, skaper et trygt område som forhindrer skade på hovedoperativsystemet, og tillater testing uten reelle konsekvenser.

To Top