Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kasperskylab/actionscript3
Tools for static and dynamic analysis of ActionScript3 SWF files.
https://github.com/kasperskylab/actionscript3
Last synced: about 1 month ago
JSON representation
Tools for static and dynamic analysis of ActionScript3 SWF files.
- Host: GitHub
- URL: https://github.com/kasperskylab/actionscript3
- Owner: KasperskyLab
- License: gpl-3.0
- Created: 2018-10-01T15:31:10.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2018-10-05T20:36:52.000Z (almost 6 years ago)
- Last Synced: 2024-02-12T15:17:12.561Z (7 months ago)
- Language: Python
- Homepage:
- Size: 203 KB
- Stars: 43
- Watchers: 8
- Forks: 14
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## ActionScript3 IDA Pro
# [Hex-Rays IDA Pro Plug-In Contest 2018](https://www.hex-rays.com/contests/2018/index.shtml)
Author: [Boris Larin](https://twitter.com/oct0xor)
This repository contains the SWF Loader, ActionScript3 processor module, and a debugger assist plugin named KLFDB.
# Requirements
IDA Pro 7.1 (Tested with IDA Pro 7.1.180227)
# Installation
Copy files into the IDA Pro directory:
* 'swf.py' to 'loaders' subfolder
* 'klfdb.py' to 'plugins' subfolder
* 'as3.py' to 'procs' subfolder# Usage
Drag and drop the SWF file to IDA Pro and select the Shockwave Flash loader.
Use 'File' -> 'Produce file' -> 'Create MAP file...' to generate a map file for use with KLFDB.
KLFDB is written to work with 32-bit versions of Stand Alone Flash and with Flash for Browsers (Internet Explorer is currently supported).
To debug the SWF file with Internet Explorer, load the Adobe Flash module (e.g. c:\Windows\System32\Macromed\Flash\Flash32_*_*_*_*.ocx) into IDA Pro.
Use 'Edit' -> 'Klfdb' -> 'Load new map file' to load the generated map file.
From this point, it is possible to use 'Edit' -> 'Klfdb' -> 'Set breakpoints on ...' to set breakpoints on methods.
After setting breakpoints, attach to the Internet Explorer process that is about to start the SWF file and use 'Edit' -> 'Klfdb' -> 'Run'. After that, allow the Flash file to execute.
The plugin will suspend execution of Adobe Flash after the breakpoint hit and will transparently fill just-in-time compiled native code with useful comments about the original bytecode.
# Acknowledgements
- [RABCDAsm](https://github.com/CyberShadow/RABCDAsm)
- [JPEXS Free Flash Decompiler](https://github.com/jindrapetrik/jpexs-decompiler/)