Heeft de Java Virtual Machine Maak Java More or Less Secure Vanuit een System Security perspectief?

Heeft de Java Virtual Machine Maak Java More or Less Secure Vanuit een System Security perspectief?


De Java virtuele machine is een computer gesimuleerd software. Wanneer u een Java-programma uit te voeren, uw computer draait de virtuele machine en de virtuele machine draait het programma. Het ontwerp van de Java virtual machine maakt het veiliger is dan het uitvoeren van code op uw systeem.

System Security

Beveiliging van het systeem is een combinatie van twee dingen: bescherming tegen crashen of falen als gevolg van fouten in de code, en de bescherming tegen kwaadaardige code van virussen of hackers. Accidental mislukking is makkelijk genoeg om onbewust te veroorzaken in vele programmeertalen door verkeerd gebruik geheugen of via andere fouten. Kwaadaardige code doet schade die opzettelijk verkeerd gebruik geheugen in lastige manieren, of gewoon door het verkrijgen van toegang tot de computer met behulp van "native methoden," de commando's die programma's gebruiken om de machine te vragen om dingen te doen.

Geheugen management

De Java virtual machine doet verschillende dingen te beschermen tegen deze bedreigingen. In de eerste plaats is het niet laat programma's toegang tot het geheugen dat zij niet zouden, of de toegang in lastige manieren (programma's kunnen elkaar niet pointers toe te voegen aan geheugenadressen te krijgen voor dingen die ze moeten geen toegang). Ook de "garbage collection" functie houdt automatisch geheugenbeheer en recycleert wat een programma niet meer gebruiken. Deze functies voorkomen dat veel van de programmeur fouten en potentiële hacker tactiek.

sandbox

Boon ander effect van de Java virtuele machine is dat het dient als een "zandbak." Wanneer u een webpagina te openen met een applet, bijvoorbeeld, het draait in de virtuele machine en kan niets doen buiten. Het is beperkt tot de zandbak, en kan alleen "spelen" binnen het. Zo ook wanneer de applet probeert beschadigd geheugen of gewoon crasht, de virtuele machine kan stoppen, maar het systeem gaat probleemloos.

inheemse Methods

Natieve methoden code die kan worden aangeroepen vanuit de Java virtuele machine, maar worden door het systeem waarop het draait. Ze kunnen een zwakte, die als een manier om de zandbak verlaten. De inheemse methoden die worden gebruikt door de ingebouwde processen Java zijn allemaal bevestigd dat er geen schadelijke code bevatten. Het is mogelijk voor een persoon om hun natieve methoden, maar de Java beveiligingssysteem kan dit voorkomen. Applets, bijvoorbeeld, is niet toegestaan ​​om geen nieuwe inheemse methoden te installeren.