ECCU 510: Secure Programming

When you visit another country, speaking the local language will enrich your visit, and allow you to navigate through all the necessities of your stay. Programing, in its various forms and languages will allow the same understanding and freedom within the cyber space. Making sure that that language is written securely, without flaws or “bugs” will certainly be a necessary piece in the puzzle we are construction with this degree.

Purpose of Class:

This class is designed to provide students an insight of current security scenario and increasing hacking attempts on various information systems. The goal of the ethical hacking and countermeasures is to help the organizations take preemptive measures against malicious attacks by attacking the system themselves staying within legal limits.

Course Learning Outcomes:

Students who successfully complete this class will be able to:

  1. Illistrate the importance of secure programming and implement a standard set of secure programming practices, policies and guidelines to develop robust software applications
  2. Compare various application development models and methodologies, and implement a threat modelling approach to balance between usability and security of applications
  3. Analyze cryptography algorithms and encryption techniques, and design implementation strategies for securing information flow in the applications
  4. Explain the fundamental security concepts used by different programming languages and analyze the usability of different programming constructs in developing secure applications
  5. Identify the common vulnerabilities, threats and attack vectors in different programming languages, assess the implications and determine the appropriate countermeasures
  6. Analyze the working of port scanners and hacking tools, and create exploits to assess the application security for common attack vectors based on evidence, information, and research
  7. Asses the security implications of application documentation and error messages, and modify default documentation and error message settings so as not to reveal sensitive information
  8. Compare and contrast different application testing and debugging approaches, develop application testing strategy and explore the ways to avoid classic testing mistakes
  9. Examine updates, activation, piracy, and other real time application deployment issues, and implement controls for secure data communication between various applications
  10. Compare and contrast different tools that help in developing secure codes and assess the role of these tools in reducing development time and cost

Related Courses

Course name Department Semester
ECCU 518: Special Topics: Introduction to Cloud Computing Master of Science in Cyber Security
ECCU 517: Cyber Law Master of Science in Cyber Security
ECCU 516: The Hacker Mind: Profiling the IT Criminal Master of Science in Cyber Security