Доброе время суток. Ползая по интернету, наткнулся на такую вот
статейку.
При прочтении возникает неоднозначное ощущение - вроде каждый абзац в отдельности понятен, но вот смысл текста в целом получается весьма странным. Автор воспевает гарвардскую архитектуру, но совершенно упускает из виду то, что она более пригодна для специализированных
(
Read more... )
Ну, вообще говоря, то, что не защищено аппаратно всегда можно обойти программно. Если программу кто-то загружает в память, то он же может ее и поменять налету. Если это не может сделать сама программа из пользовательского кольца защиты, всегда есть возможность написать драйвер который сделает это из-под кернела. Есть, конечно, Data Execution Prevention, поддерживаемая аппаратно, но и это можно обойти написав соответствующий драйвер и внедрив его в систему. Однако, дело в том, что сама проблема модифиации исполняемого кода в статье сильно преувеличена: на сегодняшний день всего-то около пары процентов вирусов используют такие сложные подходы, как запись самих себя внутрь исполняемого кода (который тоже нужно не разрушить при этом, а это не так просто, а простая защита кода по типу RSA решила бы эту проблему чуть ли не полностью) - большинство использует либо абсолютно легальные возможности системы, либо дыры в защите системы, получая то, что им не положено. Например, если система имеет возможность убивать процессы, то этим может воспользоваться и вирус.
Reply
Leave a comment