squiblydoo / debloat Goto Github PK
View Code? Open in Web Editor NEWA GUI and CLI tool for removing bloat from executables
License: BSD 3-Clause "New" or "Revised" License
A GUI and CLI tool for removing bloat from executables
License: BSD 3-Clause "New" or "Revised" License
With 1.5.0 the ability to extract NSIS Installer contents the Debloat execution flow does not follow the normal execution path when a NSIS execution is detected. The plan is to solve this in a coming version (SOON).
Diverting from the normal execution path originally was intentional for the following reasons:
Because of these reasons, Debloat has unique output and writes the files at a unique place.
The plan is to explore options to help maintain the expected return path for consistency and to maintain compatibility with tools like karton and assembly-line.
(I am writing about it here so that others are aware it is a problem, that is is a problem that I am aware of, and that it is a problem that I plan to solve.)
Another method of bloat that cannot be solved at this time includes use of the .NET Single File feature.
Tony wrote about analyzing such a DuckTail sample here: https://forensicitguy.github.io/analyzing-net-core-single-file-ducktail/
The following samples are being used as a POC for a solution:
7b9779a86781667aef8bfd44225deb0aaa61e0e7dbaa1ec1f3d3e3ec99bf5282
9a55f8490f17e095899df8bd57cbc2e8a451f01573d3763fb87d9186addc7d4e
These samples both have 460 DLL included in the Single File .NET binary. The sample Tony analyzed had 94 PE. In my observation, this number is growing over time with the result of binaries getting larger.
The files identified by those hashes are 184 MB.
In using debloat I identified that this NSIS installer did not extract properly: SHA256: F4A2677E8411FCE6307CDC54A814331BB281D3DD9EA797A4F4BB9D4A496A92CE
The NSIS file could be extracted with Binary Refinery.
Hi, great project, really useful!
Would you mind adding a license file to your project?
Github has a handy guide on it: https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository
Using repositories without a proper license is a very gray area copyright-wise and we'd like to include it as a module in one of our projects
Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.