Шкідливі програми, їх типи, принципи дії і боротьба з ними