Razumijevanje zlonamjernog softvera

Source: http://xfront.com/malware/index.html

Nedavno sam krenuo učiti o zlonamjernom softveru. Da bih organizirao svoje misli, stvorio sam model relevantnih koncepata. Malware uključuje softverske programe, pa sam morao modelirati programe – njihove ulaze i izlaze. Naučio sam da zlonamjerni softver uključuje namjeru da se nanese šteta, pa sam trebala modelirati ljude koji stvaraju programe s namjerom (bilo zlonamjernim ili benignim) i modelirati pojam štete. Saznala sam da ne postoji općeprihvaćena definicija zlonamjernog softvera. Neki ljudi zlonamjerni softver definiraju kao softver koji je stvoren zlonamjernom namjerom; drugi ga definiraju kao softver koji uzrokuje štetu. Usvojio sam definiciju da je zlonamjerni softver stvoren sa zlonamjernom namjerom i kada se njegovi rezultati izvrše štete.

Ispod su izjave entiteta i odnosa sam izrazio u svom modelu. Imajte na umu da koristim riječ  programu, a ne  softver. Ja razliku između  programa ulaza do programa. Ulazi mogu biti softver, kod, tekst ili binarna. Programi proces (izvršiti/interpretirati) ulaza. Cilj je odrediti koji ulazi su zlonamjerni.

  1. Programi su stvorili ljudi.
  2. Ulazi na programe su stvorili ljudi.
  3. Svaki ulaz u program proizvodi jedan izlaz.
  4. S obzirom na isti ulaz, program uvijek daje isti rezultat.
  5. Program je stvoren za obradu određeni skup ulaza i proizvoditi određeni skup izlaza. Stvarni skup ulaza u program i izlaza u produkciji programa mogu biti veće. To je, očekuje ulaz/izlaz je podskup stvarni ulaz/izlaz.
  6. Kada osoba stvara unos u program, on je benigni ili zlonamjerne namjere.
  7. Neki izlazi uzrokovati štetu.
  8. Ulazi koje je program stvorio procesu su benigni. Izlazi da je program stvoren za proizvodnju ne uzrokuju štetu.
  9. Ako se gore navedene izjave zadovoljni, onda slijedeći zaključci logično slijedi:
    • Ulazi koji program je stvoren kako bi proces nisu zlonamjerni, samo ulazi da program nije stvoren da proces može biti zlonamjerni.
    • Softver napisan s benignom namjerama može biti zlonamjerni. Tu može biti benigni ulaza koji, kada se izvršavaju pomoću programa za posljedicu izlaza koji uzrokuju štetu.

Modeliranje uključuje apstrahiranje irelevantnih aspekata i pojednostavljenje nekih relevantnih aspekata. Pokazao sam gore navedene izjave prijatelju i on je identificirao stvari koje je moj model izostavio i pojednostavio. U nastavku su komentari mojih prijatelja, u crveno.

1. Programi su stvorili ljudi.

Neki programi su stvorili druge programe. Na primjer, Lex je dao gramatike kao ulaz i izlaz rastavljača (koji je program). Dakle, program stvorio program.

2. Ulazi na programe su stvorili ljudi.

Većina današnjeg programa je ugrađen softver. Ti programi dobili svoje inpute od senzora i aktuatora. Dakle, većina je unos od ne-ljudi.

3. Svaki ulaz u program proizvodi jedan izlaz.

Ako program ne uspije, to ne bi mogli proizvesti bilo koji izlaz, ili to može proizvesti pogrešan izlaz, ili bi to moglo proizvesti pravi izlaz u krivo vrijeme (što, u biti, ista stvar kao i na krivom izlaz).

4. S obzirom na isti ulaz, program uvijek daje isti rezultat.

To je gotovo nikad ne vrijedi ugrađenih u realnom vremenu programa. Na primjer, ulaz programa je aparat za kavu ventil koji kontrolira protok vode u aparat za kavu, a izlaz je razina vode. Dajte Program isti ulaz (ventil) i gotovo uvijek (vodostaj) izlaz će biti drugačiji.

5. Program je stvoren za obradu određeni skup ulaza i proizvoditi određeni skup izlaza. Stvarni skup ulaza u program i izlaza u produkciji programa mogu biti veće. To je, očekuje ulaz/izlaz je podskup stvarni ulaz/izlaz.

Program treba uvijek provjeriti ulaza prije nego što ih obrađuje. Dakle, skup inputa koji se obrađuju treba biti jednak skup ulaza Program je stvoren za obradu.

6. Kada osoba stvara unos u program, on je benigni ili zlonamjerne namjere.

Kao što je ranije navedeno, ljudi nisu samo osobe koje stvaraju ulaza. Da li senzori i aktuatori su namjere?

7. Neki izlazi uzrokovati štetu.

U redu.

8. Ulazi koje je program stvorio procesu su benigni. Izlazi da je program stvoren za proizvodnju ne uzrokuju štetu.

Razmislite program koji kontrolira krilo. Ulaz iz Pitot cijevi. Pretpostavimo je led na Pitot cijevi, što je rezultiralo ulaz na program koji proizvodi izlazni (konfiguracije krila) koja uzrokuje da se zrakoplov zastoja. Ulaz je u rasponu očekivanog po programu i ima benigne namjere (uz pretpostavku Pitot-cijev ima namjeru), ali je izlaz proizvodi štetu.

9. Ako se gore navedene izjave zadovoljni, onda slijedeći zaključci logično slijedi:

  • Ulazi koji program je stvoren kako bi proces nisu zlonamjerni, samo ulazi da program nije stvoren da proces može biti zlonamjerni.

Uredan.

  • Softver napisan s benignom namjerama može biti zlonamjerni. Tu može biti benigni ulaza koji, kada se izvršavaju pomoću programa za posljedicu izlaza koji uzrokuju štetu.

Da, postoje neki unosi koji su benigni, a ipak rezultiraju štetom. Nitko namijenjen za sustav zračenja uzrokuju štetu, ali zbog greške u sustavu, netko je ubijen.


Sjetite se da sam usvojio definiciju da je zlonamjerni softver softver stvoren zlonamjernim namjerama i kada je izvršen uzrokuje štetu. Evo što je moj prijatelj morao reći o tome:

Pretpostavimo da postoji mana u dizajnu nekog programa, koji izlaže ranjivost da netko iskorištava; je taj program malware? Je implementacija lud  malware  samo zato što se može iskoristiti? Mislim da je SSH koji je imao bug u njemu za nešto kao što je 10 godina dok netko iskorištava grešku. Je li SSH programa  zlonamjernih programa  za 10 godina da bug nije pronađen? Što ako postoji mana u dizajnu nekog programa koji ima potencijal da uzrokuje štetu, npr, propust u softveru zrakoplova koji može uzrokovati da se srušiti. Je li to malware?

Zadnja izmjena: 5. studenog 2018. Autor: Roger Costello

Computer science
Kas peaksite oma operatsioonisüsteemi värskendama? Kuidas saab aru, kui on aeg?

Original: http://www.zisman.ca/blog/2021-02-13%20Time%20to%20Upgrade%20your%20Operating%20System.html Alan Zisman ©     2021-02-13           Lugeja hoiatus – see blogipostitus on peamiselt suunatud Maci kasutajatele. Muidugi on Windowsi kasutajad teretulnud seda lugema, kuid see ei käi teie kohta. Eelmisel kuul kirjutasin blogipostituse selle kohta, kuidas otsustada, kas on aeg oma tehnilist riistvara uuendada… kuid sagedamini seisame silmitsi seonduva …

Computer science
Korištenje VPython bez instaliranja softvera

Source: https://vpython.org/presentation2018/noinstall.html Bruce Sherwood Kliknite “Pročitaj više” za prikaz pojedinosti o svakoj temi GlowScript VPython: Korištenje VPython bez instaliranja softvera Ove opcije bez instalacije uključuju osnovne Python mogućnosti, ali ne podržavaju uvoz Python modula, što zahtijeva instalaciju Pythona. 3D animacije koriste WebGL u pregledniku koji Internet Explorer ne podržava. Svi trenutačni …

Computer science
Balans za volumen

Source: http://www.delback.co.uk/volbal/  Clive Backham posljednje ažuriranje: 12. svibnja 2007 Volume Balancer je program za zajednički softver koji prilagođava vršnu i prosječnu razinu WAV datoteka tako da imaju istu percipiranu glasnost. Riječ je o 32-bitnom programu koji se pokreće na svim verzijama sustava Windows od Windows 98 nadalje. Namijenjen je prije svega …