AlexanderOMara / macho-unsign

Package for removing Mach-O code signatures

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Mach-O Unsign

Package for removing Mach-O code signatures

npm node

size downloads

Build Status

Overview

A broken code signature is often worse than no signature, so it can be desirable to remove a signature.

This package can remove code signatures from Mach-O binaries.

Both thin and fat binaries are supported.

Usage

Just pass an ArrayBuffer or an object that is a view of an ArrayBuffer to the unsign function.

If the binary is signed, an unsigned binary in a new ArrayBuffer will be returned.

If the binary has no signatures, null will be returned.

import fs from 'fs';
import {unsign} from 'macho-unsign';

const unsigned = unsign(fs.readFileSync('macho-binary'));
if (unsigned) {
	console.log('Signature Removed', unsigned);
	fs.writeFileSync('macho-binary-unsigned', Buffer.from(unsigned));
} else {
	console.log('Not signed');
}

Bugs

If you find a bug or have compatibility issues, please open a ticket under issues section for this repository.

License

Copyright (c) 2019-2022 Alexander O'Mara

Licensed under the Mozilla Public License, v. 2.0.

If this license does not work for you, feel free to contact me.

About

Package for removing Mach-O code signatures

License:Mozilla Public License 2.0


Languages

Language:TypeScript 92.5%Language:JavaScript 7.5%