HackMyApp - Protect Your Xojo Applications (and Profits!!!)

Second impression :frowning:

No problemo :slight_smile:

It works.

Small issue : you have an encoding problem. Question marks over black lozenges showing at the end of the window title, and in the text after “Hacking[?]The art of hacking” and so on. Same thing at the end of “Begin” on the button.
Could it be a chr(13) unrecognized ?

the ppppv [quote=92004:@Tim Parnell]Well first impressions on the Mac: You’re using Windows text encoding :stuck_out_tongue:
[/quote]

Thanks :slight_smile: I’ll be glad to fix that. All the window text is stored in the locale folders. Yes the question marks are chr(13) -window endoflines. I’ll have to resave the locale files using UTF-8 encoding (or someone else can attempt to open a language.locale file and save with UTF-8 encoding. I guess notepad on windows automatically assumes Windows encoding for UTF-8?)

The exception error 21 pops up for me when I try to scan an OSX app, but it started scanning a Windows executable just fine.

I started say the pppv and random strings are x0084292 assembly adresses that have been converted to ascii characters (in case anyone wonders)

Bill are you scanning an application.app or browsing into it’s contents, then macos folder, then selecting the binary itself? Just curious, the more I know the more I can fix :slight_smile:

I got the error 21 after clicking on “Advanced scan” (Fast scan was not enabled as it is normally on PC). Then simply selected CheckWriter.app and clicked “Open”. Bam !

@Matthew Combatti I’m guilty of picking the .app instead of the binary.
But on a Mac, the Open Dialog doesn’t let you dig inside of .app unless you specifically let it (I’d have to dig through the dev docs to find how)

Works when you drop the Binary on the open window.

Bravo Matthew!

This looks very promising and also looks like a very relevant tool for developers. I look forward to trying it.

Fast scan is only available for items in the watch list :-). I havn’t investigated but I imagine it would be possible to browse within the application.app just as a normal folderitem without gatekeeper or security warning? That may be a solution so that users don’t have to browse into the contents of the app :slight_smile: awesome tim!!! I will investigate this option to make it easier for developers.

I dragged the Unix file out of the bundle and now it scans fine. You may have an issue with the folder nature of Mac .app documents.

Also, I noticed that ‘Language’ and ‘About’ do nothing.

It violates all kinds of Sandboxing things, but I don’t think Gatekeeper should mind.

Question: Would it scan faster if it wasn’t drawing this boxy grid? I’m not sure how to read it ( or if it’s even legit data :stuck_out_tongue: ) so it may not be a necessary part of the interface.

Ah, I assumed picking the app would work, as when you click advanced scan you can’t browse into the .app folder. As Tim said, you have to open a Finder window and show the package contents. Then click on “Advanced Scan” in your app, and when the Open dialog comes up, drag the binary onto that dialog.

Status update: I’m getting about 1MB for 4min scan speed here.

Better yet : when the user selects a .app, look into /Contents/MacOS/ and the only file there will be the Unix executable. So you can let the user select the .app and work your way inside. You can do it as a folderitem. Gatekeeper will not mind, and even if you sandboxed, reading would be permitted.

6 minutes 34 for a 2,998,192 bytes file. Fast :slight_smile:

To expand upon that, the executable name is stored in Info.plist as CFBundleExecutable so you wouldn’t have to guess at the file list inside /Contents/MacOS/

[quote=92018:@Tim Parnell]It violates all kinds of Sandboxing things, but I don’t think Gatekeeper should mind.

Question: Would it scan faster if it wasn’t drawing this boxy grid? I’m not sure how to read it ( or if it’s even legit data :stuck_out_tongue: ) so it may not be a necessary part of the interface.[/quote]

Unfortunately the scan speed does not increase in Xojo without the visualization :frowning: It increases without all the disassembling :-p Kem helped me work out the straight-binary loading of the file and increase the results display of the scan…I imagine with some more playing around speed can be found in other places.

I like mitchels idea! :slight_smile:

You may want to set autoquit to true.