{"id":18755805,"url":"https://github.com/kasperskylab/xtraining-re101","last_synced_at":"2025-08-01T03:43:05.882Z","repository":{"id":78113101,"uuid":"561373796","full_name":"KasperskyLab/xtraining-re101","owner":"KasperskyLab","description":"Code snippets for Reverse engineering training for xtraining platform","archived":false,"fork":false,"pushed_at":"2022-12-04T11:37:11.000Z","size":18571,"stargazers_count":32,"open_issues_count":0,"forks_count":11,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-13T01:56:56.447Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KasperskyLab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-03T14:52:18.000Z","updated_at":"2024-11-12T08:01:02.000Z","dependencies_parsed_at":"2023-04-29T08:47:05.088Z","dependency_job_id":null,"html_url":"https://github.com/KasperskyLab/xtraining-re101","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/KasperskyLab/xtraining-re101","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KasperskyLab%2Fxtraining-re101","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KasperskyLab%2Fxtraining-re101/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KasperskyLab%2Fxtraining-re101/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KasperskyLab%2Fxtraining-re101/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KasperskyLab","download_url":"https://codeload.github.com/KasperskyLab/xtraining-re101/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KasperskyLab%2Fxtraining-re101/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268166210,"owners_count":24206426,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-01T02:00:08.611Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T17:34:01.268Z","updated_at":"2025-08-01T03:43:05.828Z","avatar_url":"https://github.com/KasperskyLab.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Reverse-Engineering 101\n\nThanks a lot for subscribing to our reverse-engineering training aimed at beginners! This page contains all materials you will need to follow the course and will guide you through the steps needed to set up your work environment.\n\n### Preparing your virtual machine\n\nThe first thing you will need is a virtual machine running Windows – official images can be downloaded freely from [this page](https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/). You can choose whichever hypervisor you prefer (VirtualBox, VMware, etc.) or already have installed, it doesn't matter.\nImporting a virtual machine is usually as simple as double-clicking on the .OVF file contained in the downloaded archive.\n\nVirtual machines distributed by Microsoft already contain most of the development tools we need (such as Visual Studio, Git, etc.), but we still need to add the reverse-engineering tools used throughout the course.\nBefore you're able to move on with the videos, you will have to download and install the following software inside the VM:\n\n| Program | Download page | Description\n| --- | --- | --- |\n| IDA Free | https://hex-rays.com/ida-free/#download | Disassembler, used to display the assembly instructions contained in analyzed programs |\n| x64dbg | https://sourceforge.net/projects/x64dbg/files/snapshots/ | Debugger, runs programs instruction by instruction and displays the contents of registers and memory |\n| 010 Editor | https://www.sweetscape.com/download/010editor/ | Hexadecimal editor (30 day trial) |\n| Rust \u0026 Cargo | https://www.rust-lang.org/tools/install | Toolchain used to compile Rust programs, for Track 8 of the course |\n| Manalyze | https://manalyzer.org/static/manalyze_x64.zip | Static analyzer, displays information contained in the various headers of PE files |\n| setdllcharacteristics | https://blog.didierstevens.com/2010/10/17/setdllcharacteristics/ | Utility that allows you to easily disable ASLR in compiled programs |\n\n### Getting the samples used in the course\n\nThe samples used in this training are hosted in this repository and can be downloaded directly as a [ZIP archive](https://github.com/KasperskyLab/xtraining-re101/archive/refs/heads/main.zip), or with the following command:\n\n```bash\ngit clone https://github.com/KasperskyLab/xtraining-re101.git\n```\n\nThis repository contains one folder for each of the course's track, with all the corresponding source code and exercises.\nPlease note that the sample for Track 9, which is a (fake) malware to analyze, is stored in a password-protected archive to prevent triggering security solutions. As is tradition, the password for this archive is `infected`.\n\n### Troubleshooting\n\nVirtual machines being deployed on student hardware outside of our control, we will not be able to provide assistance related to the use of your hypervisor – whichever it is.\nPlease **only** open GitHub tickets to report issues with these instructions or the files distributed for the course.\nInquiries regarding the videos, exercises and solutions to the exercises should be directed to the Xtraining support staff directly.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkasperskylab%2Fxtraining-re101","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkasperskylab%2Fxtraining-re101","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkasperskylab%2Fxtraining-re101/lists"}