Program som avslutar slumpmässiga processer på datorn dyker upp igen och kan få systemet att krascha

    Categories: News (SV)
computador travado

computador travado - Ei Ywet/Shutterstock.com

En kategori av farliga applikationer, utformade för att slumpmässigt avsluta processer på datorer, har återigen vunnit framträdande plats på internet. Conhecidos som “processroulett”, fortsätter dessa program att avsluta aktiva uppgifter tills operativsystemet helt kraschar, vilket resulterar i en total krasch eller den populära “blå skärmen”.

Konceptet är inte nytt och har cirkulerat i utvecklargemenskaper i flera år som en slags riskabel teknisk utmaning. Contudo, en ny version utvecklad med hjälp av artificiell intelligens, har återuppväckt debatten om gränserna för programvaruexperiment och riskerna förknippade med dessa verktyg, som är tillgängliga för Windows, macOS och Linux.

Även om den har skapats utan avsikt att vara skadlig programvara, kan den praktiska effekten vara förödande för intet ont anande användare, vilket kan orsaka förlust av osparade data och potentiell filkorruption. Skaparna själva varnar för att exekvering endast måste ske i kontrollerade miljöer, såsom virtuella maskiner, för att undvika permanent skada på huvudsystemet.

Marcelo Camargo/byrå Brasil

Vad är process roulette

Konceptet “processroulett” uppstod som ett tekniskt skämt och ett extremt stresstest för operativsystem. Den centrala idén är enkel och farlig: skapa ett skript som slumpmässigt väljer en process som körs på datorn och kraftfullt avslutar den och upprepar åtgärden i en kontinuerlig cykel.

Oförutsägbarhet är nyckelelementet. Programmet kan avsluta allt från en ofarlig uppgift som Notepad till en kritisk systemtjänst som fönsterhanteraren (explorer.exe på Windows), vilket leder till en omedelbar krasch och behovet av en tvingad omstart av datorn.

[[MVG_PROTECTED_BLOCK_0]

Denna praxis tillåter programmerare att utforska motståndskraften och interna beroenden hos operativsystem. Genom att observera vilka processer som orsakar fel när de avslutas, är det möjligt att bättre förstå mjukvaruarkitekturen, om än på ett mycket destruktivt och inte rekommenderat sätt.

Analogin med rysk roulette är direkt: med varje “runda” vet användaren inte vilken process som kommer att “skjutas”, och spelet slutar först när en viktig komponent träffas, vilket stoppar hela maskinen. Därför är den enhälliga rekommendationen att aldrig köra sådana verktyg på en dator för personligt eller professionellt bruk.

Den nya AI-drivna versionen

Nyligen introducerade utvecklaren känd som IceSolst Task Unmanager, en modern version av konceptet, skapad med hjälp av Cursor AI-kodningsplattformen. Este nya applikation automatiserar inte bara avslutningen av processer med deras ID (processidentifierare), utan lägger också till ett lager av “gamification” till upplevelsen, vilket gör den mer interaktiv och visuellt tilltalande, vilket bidrog till dess snabba viralitet på sociala medier.

Verktyget har ett grafiskt gränssnitt som visar processer som stängs i realtid och innehåller humoristiska element, såsom en fiktiv intern butik. Nessa butik, användare kan “köpa” simulerad skadlig programvara med hjälp av virtuella mynt som tjänas in med varje framgångsrik snurr. Projektet delades på utvecklarplattformar och spreds snabbt och genererade tusentals kommentarer och diskussioner om idéns kreativitet och ansvarslösa. Den lätthet med vilken AI hjälpte till med att skapa kod har också väckt debatter om framtiden för mjukvaruutveckling och etiken bakom att skapa potentiellt skadliga verktyg, även om det är i underhållnings- eller experimentsyfte.

Hur dessa verktyg fungerar i praktiken

Den tekniska funktionen bakom “process roulette”-applikationer är baserad på användningen av inbyggda kommandon och förhöjda behörigheter för själva operativsystemet för att manipulera aktiva processer. I Windows-miljön, till exempel, anropar skript ofta system-API-funktioner, såsom `TerminateProcess`, som tvingar fram en omedelbar avslutning av en uppgift utan att tillåta den att spara sitt tillstånd eller utföra rensningsrutiner. På system baserade på Unix, som Linux och macOS, är motsvarande kommando “kill”, vanligtvis med signalerna “SIGTERM” (för en standardavslutning) eller “SIGKILL” (för en omedelbar och ovillkorlig avslutning). Kärnan i programmet består av en algoritm som först tar listan över alla körande Processo ID (PID), filtrerar bort några viktiga processer för att inte krascha omedelbart (i vissa versioner), och sedan väljer ett slumpmässigt mål från den listan för att utföra avslutningskommandot. Den slumpmässiga naturen säkerställer att varje exekvering är unik och kan ta sekunder eller minuter, beroende på tur och vilka processer som drabbas först. Algumas-implementeringar lägger till en touch av utmaning, vilket kräver att användaren skriver en specifik fras, som “jag är en feg”, för att bryta cykeln innan total kollaps.

Historiska distributioner på GitHub

Trots den senaste tidens uppmärksamhet har flera versioner av “processroulett” varit tillgängliga på offentliga arkiv som GitHub i nästan ett decennium. En av de äldsta posterna går tillbaka till 2016, då utvecklaren Jamis Buck publicerade en flerspelarversion av konceptet.

I denna implementering kopplade flera deltagare till en central server. En av dem fungerade som en “croupier” och startade rundorna som utlöste avslutningen av processer samtidigt på alla anslutna maskiner, vilket förvandlade stresstestet till ett riskabelt kollektivt spel.

En annan populär variant skapades av användaren Codebox för ungefär fem år sedan. Trata är ett enklare skalskript, som låter användaren definiera antalet omgångar innan processen påbörjas, och samlar poäng för varje uppgift som slutförts framgångsrikt innan systemet kraschar.

De verkliga farorna för den genomsnittliga användaren

Att köra något av dessa verktyg på en vanlig maskin utgör en betydande och omedelbar risk. Den mest uppenbara faran är förlusten av osparade data, eftersom applikationer som textredigerare, kalkylblad eller skapande programvara stängs abrupt utan någon förvarning.

Förutom förlust av arbete finns det en risk, om än liten, för korruption av systemfiler. Om en kritisk process avbryts under en diskskrivningsoperation kan den lämna filer i ett inkonsekvent tillstånd, vilket i sällsynta fall kan kräva manuell återställning eller till och med ominstallation av operativsystemet.

Utvecklargemenskapens syn

Den återkommande populariteten för dessa verktyg återspeglar en dualitet i programmeringskulturen. Å ena sidan representerar de teknisk nyfikenhet och viljan att utforska mjukvarans gränser på ett praktiskt sätt. Å andra sidan kritiseras de för att uppmuntra metoder som, även om de är pedagogiska för vissa, kan vara destruktiva om de används utan vederbörlig kunskap och omsorg, särskilt av nybörjare som kanske inte förstår allvaret i riskerna.

Säkra alternativ till systemtestning

För utvecklare och entusiaster som är intresserade av att testa stabiliteten i sina system finns det mycket säkrare och mer professionella alternativ. Ferramentas benchmarks och stresstester, som Prime95 för CPU och FurMark för grafikkort, är designade för att pressa hårdvaran till dess gränser på ett kontrollerat sätt, utan att slumpmässigt avsluta processer.

För experiment med potentiellt instabil eller farlig programvara är användningen av isolerade miljöer standardpraxis. Virtualisering Softwares som VirtualBox och VMware, eller containerteknologier som Docker, skapar ett säkert utrymme som förhindrar skador på huvudoperativsystemet, vilket tillåter testning utan verkliga konsekvenser.