Git Product home page Git Product logo

389rspring18's Introduction

CMSC389R: Introduction to Ethical Hacking (HackTheClass)

HackTheClass

Course Description

This practical, hands-on 1-credit course provides students with an introduction to ethical hacking. The course begins with a discussion on the ethics behind security research and progresses to topics that surround penetration testing, forensics, cryptology, and binary reverse engineering and exploitation. This course is also meant to introduce students to Capture-the-Flag (CTF) style cybersecurity challenges, encourages participation in UMD's Cybersecurity Club (UMDCSEC), and prepares for CMSC414.

Course Details

Topics Covered

  • Security research ethics
    • Cyberlaw
    • Responsible disclosure
    • Expectation of privacy
  • Linux
    • Command line
    • Configuring an environment
    • Virtual machines
  • Target reconnaissance
    • OSINT
    • Social engineering
    • OPSEC
  • Penetration testing
    • Vulnerability scanning
    • Using automated tools
    • Maintaining persistence
  • Forensics
    • Imaging
    • File types and carving
    • Metadata
    • File system artifacts
    • Password cracking
    • Network captures
    • Steganography
  • Binaries
    • Reverse engineering
    • Stack-based buffer overflow
    • Shellcode
  • Web
    • Javascript deobfuscation
    • SQL injection
    • XSS & CSRF
  • Crypto
    • Classic ciphers
    • Symmetric and asymmetric key
  • CTF
    • Jeopardy vs Attack-Defense
    • Write-ups

Grading

Grades will be maintained on the CS Department grades server.

You are responsible for all material discussed in lecture and posted on the class repository, including announcements, deadlines, policies, etc.

Your final course grade will be determined according to the following percentages:

Percentage Title Description
55% Write-ups Weekly individual write-ups (250-500 words) that summarize the lecture and assigned CTF challenges.
20% Midterm Examination on topics covered until Forensics II.
25% Final Hack Demonstrate mastery of all topics learned and apply knowledge to change your grade on the class's private grade server. The grade earned will be determined by levels unlocked in the grade server and will be applied to your official final grade.

Any request for reconsideration of any grading on coursework must be submitted within one week of when it is returned. No requests will be considered afterwards.

Schedule

Week Topic Assignment
1 (1/26) Introduction + Ethics 1 Download VirtualBox, Kali. Gray Hat Hacking (Ch. 1). OSINT Handbook. OPSEC.
2 (2/2) Ethics 2 + OSINT 1 Challenges. Write-up 1. Kali VM installation instructions
3 (2/9) OSINT 2 + Vulnerability scanning Challenges. Write-up 2.
4 (2/16) Penetration testing I Challenges. Write-up 3.
5 (2/23) Penetration testing II Challenges. Write-up 4.
6 (3/2) Forensics I Challenges. Write-up 5.
7 (3/9) Forensics II Challenges. Write-up 6.
8 (3/16) Midterm Start of spring break.
9 (3/30) Cryptography I Challenges. Write-up 7.
10 (4/6) Cryptography II Challenges. Write-up 8.
11 (4/13) Web Challenges. Write-up 9.
12 (4/20) Binaries I Challenges. Write-up 10.
13 (4/27) Binaries II Challenges. Write-up 11.
14 (5/4) Wrap-up Final hack.

The timeline is not final and can be subject to change.

Communicating with course staff

Outside of class interaction between students and course staff will occur via piazza. Email should only be used for emergencies and not class related questions.

Instructor:

Dr. Dave Levin - [email protected]

TAs:

Michael Reininger - [email protected]

William Woodruff - [email protected]

Joshua Fleming - [email protected]

Excused Absence and Academic Accommodations

See the section titled Course Related Policies.

Disability Support Accommodations

See the section titled "Accessibility" available at Course Related Policies.

Academic Integrity

Note that academic dishonesty includes not only cheating, fabrication, and plagiarism, but also includes helping other students commit acts of academic dishonesty by allowing them to obtain copies of your work. In short, all submitted work must be your own. Cases of academic dishonesty will be pursued to the fullest extent possible as stipulated by the Office of Student Conduct.

It is very important for you to be aware of the consequences of cheating, fabrication, facilitation, and plagiarism. For more information on the Code of Academic Integrity or the Student Honor Council, please visit http://www.shc.umd.edu.

Course Evaluations

If you have a suggestion for improving this class, don't hesitate to tell the instructor or TAs during the semester. At the end of the semester, please don't forget to provide your feedback using the campus-wide CourseEvalUM system. Your comments will help make this class better.

Thanks to the writers of this syllabus for the wording of much of this document.

389rspring18's People

Contributors

1umpus avatar jsfleming avatar woodruffw avatar music avatar

Stargazers

Constantin Câmpean avatar Samridha Murali avatar Nimish Bhide avatar Alexey Zudenkov avatar Ahmed Tamrawi avatar Kashish srivastava avatar Daniel Peters avatar Matthew avatar Chris Sullivan avatar Samir Lalvani avatar Mukunda Madhava Nath avatar  avatar Mark Keller avatar Sanmathi Bharamgouda avatar Andrei David avatar Luis Quintanilla avatar  avatar  avatar Winston (Winny) Weinert avatar  avatar Omer Yampel avatar

Watchers

James Cloos avatar  avatar Huijing Gong avatar Tanay Wakhare avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.