Error message

User warning: The following module has moved within the file system: ldap_user. In order to fix this, clear caches or put the module back in its original location. For more information, see the documentation page. in _drupal_trigger_error_with_delayed_logging() (line 1181 of /usr/local/stow/drupal-7.91/lib/drupal-7.91/includes/


Lecturers Eran Tromer
Leading teaching assistants Itamar GiladNir Krakowski
Teaching assistant / exercise checker Michal Shagam
Lecture Sundays 13:00-16:00, (0368-3065-01)
Dan David 002
Recitations Sundays 16:00-17:00 (0368-3065-02),
Sundays 17:00-18:00 (0368-3065-03)
Dan David 110
Final exams 26 Jun 2015 09:00-12:00 [exam form],
07 Sep 2015 09:00-12:00 [exam form] [solution]

The Introduction to Information Security course surveys central concepts in applied information security and cyber security, and offers a hands-on introduction to secure programming and vulnerability analysis.

High-level goals:

  • Make students aware of the major security risks and attack vectors
  • Gain concrete hands-on experience with prominent tools and technologies
  • Teach about good tools and practices for building secure systems
  • Instill the state of mind and conceptual vocabulary for reasoning about systems security
  • Offer a glimpse into open research questions

A student who has taken the class and then got programming project should know when he's doing something dangerous, what are the standard solutions, and be able to to productively communicate with vendors and experts.


  1. Programming vulnerabilities (buffer/stack/integer overflow, input validation, privilege escalation)
  2. Exploitation techniques and the low-level details underlying them (reverse engineering x86 assembly, shell code, return-oriented programming, rootkits, fuzzing, packet injection)
  3. Secure platforms and programming (confinement mechanisms, operating system security, languages, libraries, trusted platform architecture, good practices, tanalysis tools)
  4. Network security and vulnerability  (TCP/IP security, DoS attacks, SSL/TLS)
  5. Web security (browser security model, XSS, CSRF)
  6. Cryptography basics (encryption, digital signatures, certificates)
  7. Authentication (passwords, biometrics, tokens)
  8. Authorization policies (access control, information flow control, logging, detection)
  9. Physical security (air gaps, side-channel attacks)
  10. Study cases (e.g., banks, mobile phones, cars)

See also previous years' course (2013, 2014) but note that there are changes in the syllabus.

A significant part of the course material will be in English.

Course requirements:


Requisite courses:

  • Operating Systems (0368-2162) or Introduction to Systems Programming (0512-4402) or equivalent

Recommended (not mandatory) courses:

  • Introduction to Modern Cryptography (0368-3049) or Cryptography and Computer Security (0510-7401) or Foundations of Cryptography (0368-4162) or equivalent