X hits on this document

312 views

0 shares

0 downloads

0 comments

15 / 120

workings and witness first-hand how vulnerabilities find their way into computer

programs. Reversing software that has been infected with a virus, is a technique used by

the developers of anti-virus products to identify and neutralize new viruses or understand

the behavior of malware.

Programming languages like Java, which do not require computer programmers to

manage low-level system details, have become ubiquitous. As a result, computer

programmers have increasingly lost touch with what happens in a system during

execution of programs. [3] suggests that programmers can gain a better and deeper

understanding of software and hardware through learning reverse engineering concepts.

Hackers and crackers have been quite vocal and active in proving that they possess a

deeper understanding of low-level system details than their professional counterparts [3].

According to [5], there are four software security related reverse engineering

scenarios. Similar to development related reverse engineering—the scenarios cover a

broad spectrum of activities: ensuring that software is safe to deploy and use, protecting

clever algorithms or business processes, preventing pirating of software and digital media

such as music, movies, and books—and making sure that cryptographic algorithms are

not vulnerable to attacks. Fig. 3.1 summarizes the software security related reverse

engineering scenarios. The following are tasks one might perform in each of the

reversing scenarios [5]:

Detecting and Neutralizing iruses and Malware: Detect, analyze, or neutralize

(clean) malware, viruses, spyware, and adware.

7

Document info
Document views312
Page views313
Page last viewedSun Dec 04 00:08:17 UTC 2016
Pages120
Paragraphs2913
Words25794

Comments