School: Science

This unit information may be updated and amended immediately prior to semester. To ensure you have the correct outline, please check it again at the beginning of semester.

  • Unit Title

    Software Reverse Engineering
  • Unit Code

    CSI2107
  • Year

    2016
  • Enrolment Period

    1
  • Version

    1
  • Credit Points

    15
  • Full Year Unit

    N
  • Mode of Delivery

    On Campus
    Online

Description

Software reverse engineering is the art and science of determining the functionality and means of operation of unknown software. This unit explores the core tools and techniques used by cyber security specialists when encountering potentially malicious or otherwise interesting software. Successful students will learn the skills required to discover the true purpose of software in the absence of source code or other documentation. These skills are key for any incident responder dealing with cyber incidents and intrusion.

Prerequisite Rule

Must have passed CSP1150. Must have passed ENS1161. Must have passed CSI1101. Must have passed CSI1241.

Learning Outcomes

On completion of this unit students should be able to:

  1. Discuss the use of software reverse engineering techniques as a component of incident response.
  2. Describe the role of static and dynamic analysis in the examination of unknown binaries.
  3. Compare different types of obfuscation and deobfuscation techniques in common use.
  4. Describe the role of automation in software reverse engineering.
  5. Apply established tools and techniques to examine unknown binaries.

Unit Content

  1. Structure of executables for common architectures.
  2. Functionality of the execution stack.
  3. Deriving function calls from disassembled code.
  4. Extracting structural information.
  5. Unpacking of protected executables.
  6. Deobfuscating obfuscated executables.
  7. Common tools and techniques.
  8. Automation of software reverse engineering tasks.
  9. Static and dynamic analysis techniques.

Additional Learning Experience Information

Lectures, workshops, case studies, and practical exercises.

Assessment

GS1 GRADING SCHEMA 1 Used for standard coursework units

Students please note: The marks and grades received by students on assessments may be subject to further moderation. All marks and grades are to be considered provisional until endorsed by the relevant Board of Examiners.

ON CAMPUS
TypeDescriptionValue
AssignmentReview of Reverse Engineering Methodologies20%
Case StudyApplied Reverse Engineering Analysis 40%
Examination ^End of Semester Examination40%
ONLINE
TypeDescriptionValue
AssignmentReview of Reverse Engineering Methodologies20%
Case StudyApplied Reverse Engineering Analysis40%
Examination ^End of Semester Examination40%

^ Mandatory to Pass

Text References

  • ^

    Yurichev, D. (2015). Reverse engineering for beginners. Kyiv, Ukraine : Author.

  • Harper, A., Harris, S., Ness, J., Eagle, C., Lenkey, G., & Williams, T. (2011). Gray hat hacking (3rd ed.). New York, NY : McGraw-Hill Osborne Media.
  • Sikorski, M., & Honig, A. (2012). Practical malware analysis: The hands-on guide to dissecting malicious software. San Fancisco, CA: No Starch Press.
  • Dang, B., Gazet, A., & Bachaalany, E. (2014). Practical reverse engineering: X86, X64, ARM, windows kernel, reversing tools and obfuscation. Indianapolis, IN: John Wiley & Sons.

^ Mandatory reference


Disability Standards for Education (Commonwealth 2005)

For the purposes of considering a request for Reasonable Adjustments under the Disability Standards for Education (Commonwealth 2005), inherent requirements for this subject are articulated in the Unit Description, Learning Outcomes and Assessment Requirements of this entry. The University is dedicated to provide support to those with special requirements. Further details on the support for students with disabilities or medical conditions can be found at the Access and Inclusion website.

Academic Misconduct

Edith Cowan University has firm rules governing academic misconduct and there are substantial penalties that can be applied to students who are found in breach of these rules. Academic misconduct includes, but is not limited to:

  • plagiarism;
  • unauthorised collaboration;
  • cheating in examinations;
  • theft of other students' work;

Additionally, any material submitted for assessment purposes must be work that has not been submitted previously, by any person, for any other unit at ECU or elsewhere.

The ECU rules and policies governing all academic activities, including misconduct, can be accessed through the ECU website.

CSI2107|1|1

School: Science

This unit information may be updated and amended immediately prior to semester. To ensure you have the correct outline, please check it again at the beginning of semester.

  • Unit Title

    Software Reverse Engineering
  • Unit Code

    CSI2107
  • Year

    2016
  • Enrolment Period

    2
  • Version

    1
  • Credit Points

    15
  • Full Year Unit

    N
  • Mode of Delivery

    On Campus
    Online

Description

Software reverse engineering is the art and science of determining the functionality and means of operation of unknown software. This unit explores the core tools and techniques used by cyber security specialists when encountering potentially malicious or otherwise interesting software. Successful students will learn the skills required to discover the true purpose of software in the absence of source code or other documentation. These skills are key for any incident responder dealing with cyber incidents and intrusion.

Prerequisite Rule

Must have passed CSP1150. Must have passed ENS1161. Must have passed CSI1101. Must have passed CSI1241.

Learning Outcomes

On completion of this unit students should be able to:

  1. Discuss the use of software reverse engineering techniques as a component of incident response.
  2. Describe the role of static and dynamic analysis in the examination of unknown binaries.
  3. Compare different types of obfuscation and deobfuscation techniques in common use.
  4. Describe the role of automation in software reverse engineering.
  5. Apply established tools and techniques to examine unknown binaries.

Unit Content

  1. Structure of executables for common architectures.
  2. Functionality of the execution stack.
  3. Deriving function calls from disassembled code.
  4. Extracting structural information.
  5. Unpacking of protected executables.
  6. Deobfuscating obfuscated executables.
  7. Common tools and techniques.
  8. Automation of software reverse engineering tasks.
  9. Static and dynamic analysis techniques.

Additional Learning Experience Information

Lectures, workshops, case studies, and practical exercises.

Assessment

GS1 GRADING SCHEMA 1 Used for standard coursework units

Students please note: The marks and grades received by students on assessments may be subject to further moderation. All marks and grades are to be considered provisional until endorsed by the relevant Board of Examiners.

ON CAMPUS
TypeDescriptionValue
AssignmentReview of Reverse Engineering Methodologies20%
Case StudyApplied Reverse Engineering Analysis 40%
Examination ^End of Semester Examination40%
ONLINE
TypeDescriptionValue
AssignmentReview of Reverse Engineering Methodologies20%
Case StudyApplied Reverse Engineering Analysis40%
Examination ^End of Semester Examination40%

^ Mandatory to Pass

Text References

  • ^

    Yurichev, D. (2015). Reverse engineering for beginners. Kyiv, Ukraine : Author.

  • Harper, A., Harris, S., Ness, J., Eagle, C., Lenkey, G., & Williams, T. (2011). Gray hat hacking (3rd ed.). New York, NY : McGraw-Hill Osborne Media.
  • Sikorski, M., & Honig, A. (2012). Practical malware analysis: The hands-on guide to dissecting malicious software. San Fancisco, CA: No Starch Press.
  • Dang, B., Gazet, A., & Bachaalany, E. (2014). Practical reverse engineering: X86, X64, ARM, windows kernel, reversing tools and obfuscation. Indianapolis, IN: John Wiley & Sons.

^ Mandatory reference


Disability Standards for Education (Commonwealth 2005)

For the purposes of considering a request for Reasonable Adjustments under the Disability Standards for Education (Commonwealth 2005), inherent requirements for this subject are articulated in the Unit Description, Learning Outcomes and Assessment Requirements of this entry. The University is dedicated to provide support to those with special requirements. Further details on the support for students with disabilities or medical conditions can be found at the Access and Inclusion website.

Academic Misconduct

Edith Cowan University has firm rules governing academic misconduct and there are substantial penalties that can be applied to students who are found in breach of these rules. Academic misconduct includes, but is not limited to:

  • plagiarism;
  • unauthorised collaboration;
  • cheating in examinations;
  • theft of other students' work;

Additionally, any material submitted for assessment purposes must be work that has not been submitted previously, by any person, for any other unit at ECU or elsewhere.

The ECU rules and policies governing all academic activities, including misconduct, can be accessed through the ECU website.

CSI2107|1|2