

The Apfell payload is a JavaScript for Automation (JXA) payload that uses Objective-C API calls. MythicĪnyone who does any MacOS Red Team work should be familiar with Cody Thomas and his work with Mythic Command & Control (C2), and the Apfell payload. I even tried repairing some of the modules myself, but I just couldn’t get past all of the errors. I started searching Node.js modules in npm for something that I could use. This sounded perfect for what I have set out to develop. Basically, your Electron app is a Node.js app running on Chromium. I did some research and found that Electron is an open source, cross-platform JavaScript framework that combines Node.js and the Chromium browser so that the developer can build standalone GUI applications using web technologies. I decided to find out… ElectronĪt this point, all I knew about Electron is that it has been used to develop really cool apps like Slack, Discord, Facebook Messenger, Twitch and more. I was talking to my friend Christopher Ross who suggested that it would be cool to make an Electron app that would do what I wanted my app to do (again, not yet divulging), but wasn’t sure how easy it would be to have it make MacOS Native API calls.

I am pretty experienced in using bootstrap for UI development and thought that it would be cool if I could do something in JavaScript. I decided that I did not want to use Apple’s UIKit, because I don’t have much experience using it and I’m honestly not too impressed with the GUIs that it produces. So, this story begins with me deciding that I wanted to develop a standalone app that can make MacOS Native API calls for purposes that I will not dive into, just yet (I plan to develop the app and do not know yet, how well it will pan out in the end, so I don’t want to give it away in this article.
