https://github.com/weizman/awesome-javascript-anti-debugging
javascript based browser anti debugging techniques resources
https://github.com/weizman/awesome-javascript-anti-debugging
List: awesome-javascript-anti-debugging
awesome awesome-list browser javascript security
Last synced: 5 months ago
JSON representation
javascript based browser anti debugging techniques resources
- Host: GitHub
- URL: https://github.com/weizman/awesome-javascript-anti-debugging
- Owner: weizman
- Created: 2020-10-26T15:40:16.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2023-11-13T23:02:27.000Z (over 1 year ago)
- Last Synced: 2023-11-14T00:25:17.530Z (over 1 year ago)
- Topics: awesome, awesome-list, browser, javascript, security
- Language: HTML
- Homepage: https://weizmangal.com/awesome-javascript-anti-debugging/
- Size: 53.7 KB
- Stars: 80
- Watchers: 5
- Forks: 8
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# [Awesome Javascript Anti Debugging](https://github.com/weizman/awesome-javascript-anti-debugging/) [](https://github.com/sindresorhus/awesome)
> Curated list of Javascript Anti Debugging techniques
When it comes to Web Security there is a wide range of different aspects to it.
The most discussed aspect is the different types of security breaches, such as XSS, CSRF and more.Javascript Anti Debugging on the other hand is an aspect that is not disscued enough, but might have a large potential impact when it comes to attacking and defending in the web security world.
*Please read the [contribution guidelines](https://github.com/qazbnm456/awesome-web-security/blob/master/CONTRIBUTING.md) of the [awesome-web-security](https://github.com/qazbnm456/awesome-web-security) repo before contributing - we follow similar guidelines here!*
> _By [Gal Weizman](https://weizman.github.io/website/)_
## ATTENTION ⚠️
YOU SHOULD PREFER THE [SERVED VERSION](https://weizmangal.com/awesome-javascript-anti-debugging/), WHERE YOU CAN ALSO INTERACT WITH LIVE DEMOS!
## Contents
- [Intro](#intro)
- [What Is Browser Anti Debugging?](#what-is-browser-anti-debugging)
- ["New Gen" Techniques](#new-gen-technique)
- [SourceMappingURL](#sourcemappingurl)
- [Chromium Devtools Scope Pane](#ChromiumDevtoolsScopePane)
- [ChromiumShadowRootAbuse](#ChromiumShadowRootAbuse)
- ["Old Gen" Techniques](#old-gen-technique)
- [TimeDiff](#time-diff)
- [ChromeGetter](#chrome-getter)
- [CodeIntegrity](#code-integrity)
- [FlowIntegrity](#flow-integrity)
- [HooksDetection](#hooks-detection)
- [RestrictionalEnviroments](#restrictional-enviroments)
- [SizeChanges](#size-changes)
- [debugger;](#debugger)
- [Obfuscation](#obfuscation)
#### What Is Browser Anti Debugging?Anti Debugging techniques allow attackers to tell whether their malicious code is being inspected or not when is executed within the browser.
The idea is to use the tools given by the browser (which is simply javascript in most cases) to understand whether the website's source code is being inspected and/or debugged in any way, and to take different actions based on the result.Usually, these techniques are used by attackers to hide their malicious activity and protect their code from being uncovered.
Meaning, attackers can protect their code using anti debugging techniques, that when find that the code is being inspected stop the attack instead of completing it.
### ["New Gen" Techniques](./NewGenTechniques)
#### [SourceMappingURL](./NewGenTechniques/SourceMappingURL)
#### [Chromium Devtools Scope Pane](./NewGenTechniques/ChromiumDevtoolsScopePane)
#### [Chromium Shadow Root Abuse](./NewGenTechniques/ChromiumShadowRootAbuse)
### ["Old Gen" Techniques](./OldGenTechniques)
#### [TimeDiff](./OldGenTechniques/TimeDiff)
#### [ChromeGetter](./OldGenTechniques/ChromeGetter)
#### [CodeIntegrity](./OldGenTechniques/CodeIntegrity)
#### [FlowIntegrity](./OldGenTechniques/FlowIntegrity)
#### [HooksDetection](./OldGenTechniques/HooksDetection)
#### [RestrictionalEnviroments](./OldGenTechniques/RestrictionalEnviroments)
#### [SizeChanges](./OldGenTechniques/SizeChanges)