HN user

nicolodev

375 karma

https://nicolo.dev Email: seekbytes@protonmail.com

Posts39
Comments41
View on HN
www.youtube.com 3mo ago

Challenges in Decompilation and Reverse Engineering of CUDA Kernels [video]

nicolodev
2pts0
www.youtube.com 4mo ago

Challenges in Decompilation and RE of CUDA-Based Kernels [video]

nicolodev
8pts0
github.com 1y ago

Show HN: IPA, a GUI for exploring inner details of PDFs

nicolodev
270pts50
github.com 1y ago

Nyxstone: An LLVM-based (Dis)assembly Framework

nicolodev
2pts0
cloud.google.com 2y ago

Scaling Up Malware Analysis with Gemini 1.5 Flash

nicolodev
2pts0
github.com 2y ago

Nyxstone: An LLVM-based (Dis)assembly Framework

nicolodev
7pts0
nicolo.dev 2y ago

The Role of the Control Flow Graph in Static Analysis

nicolodev
2pts0
github.com 2y ago

Show HN: MicroSCOPE – identify ransomware statically with heuristics

nicolodev
7pts3
www.lambrospetrou.com 2y ago

Template for writing technical RFC docs

nicolodev
1pts0
nicolo.dev 2y ago

The Role of the Control Flow Graph in Static Analysis

nicolodev
6pts1
www.theartofdoingstuff.com 2y ago

The One Line That Ruined Hallmark Movies for Me

nicolodev
2pts4
www.zenaassaad.com 2y ago

Should AI Be Held Liable When Things Go Wrong?

nicolodev
2pts2
togelius.blogspot.com 2y ago

AI safety regulation threatens our digital freedoms

nicolodev
3pts0
nicolo.dev 2y ago

The Role of the Control Flow Graph in Static Analysis

nicolodev
2pts0
www.applemust.com 2y ago

Morgan Stanley warns on 'below seasonal' Apple Dec. guidance

nicolodev
2pts0
www.yankodesign.com 2y ago

Recyclable, paper RFID tags look like a work of magic

nicolodev
1pts0
publishingperspectives.com 2y ago

UK: London Book Fair Names Its 2024 'Authors of the Day'

nicolodev
1pts0
cloud.google.com 2y ago

New Map APIs from Google

nicolodev
241pts117
flowingdata.com 2y ago

Turn a static SVG into an interactive one, with Flourish

nicolodev
1pts0
bigthink.com 2y ago

Quantum Supremacy Explained

nicolodev
1pts0
londonist.com 2y ago

Things to Do in London This Autumn

nicolodev
2pts0
scottboms.com 2y ago

The Weight of Information

nicolodev
1pts0
www.england.nhs.uk 2y ago

NHS world first rollout of cancer jab that cuts treatment time by up to 75%

nicolodev
42pts6
billpetro.com 2y ago

History of Blue Moon

nicolodev
1pts0
nicolo.dev 2y ago

Analysis of obfuscations found in Apple FairPlay

nicolodev
28pts8
nicolo.dev 2y ago

Reverse Engineering McAfee Virus Scan – Part I: The Installer

nicolodev
3pts0
github.com 2y ago

Show HN: Obfuscation Tool for Mixed Boolean Arithmetic in Rust

nicolodev
3pts1
blog.erk.dev 2y ago

BadAppleFont

nicolodev
4pts1
github.com 2y ago

Show HN: Obfuscation Tool for Mixed Boolean Arithmetic Expressions

nicolodev
4pts3
nymag.com 2y ago

Who Are the Japanese in Christopher Nolan’s ‘Oppenheimer’?

nicolodev
4pts0

It’s astonishing how nobody hasn’t mentioned abstract interpretation yet. Under classical static analysis, if you can “prove” that a variable does not have values in some unsound zones, you can e.g. “prove” soundness or apply further optimizations.

The interval abstract domain works under interval analysis with an algebra that’s the same of this calculator. It’s funny to implement something like that on source/binary level :)

mutool clean -d in.pdf out. pdf

My tool can do exactly the same (viewing internal structure, exporting objects, and see the uncompressed raw content for stream) with a graphical interface and without all this kind of flags (which one of the reasons I started to design this project with egui), but thanks for posting yours too.

Nice! My tool should be runnable in the browser thanks to wasm compatibility with Rust + egui :) Btw I've just tried it, and it's a little bit buggy in Safari with a 504kb PDF (lots of objects though). Apart from that, is there a way to export the raw stream? Is there any reason of do you print all the raw streams as a text?

:D Well, I'm sure that half of reverse engineering community needs to thank you, and Zynamics for the important contribution for tools of static analysis. I just take the occasion to thank you for being an inspiration with such awesome tools like in BinNavi, BinDiff, and ultimately PDF dissector. When I was reading that it got discontinued, I just had that idea and started to reason about something focused on analysis, and applying some approaches we've already seen for the binary analysis tools.

Thanks for the list, the idea behind my tool was to try to code something that might fit an analyst that would take a fast look at the PDF. I'm also trying to figure out some fast heuristics to mark/highlight some peculiar stuff on the file itself.

Now regarding the tools you mentioned, I haven't checked out all of them, but part of them are interesting (and more mature, speaking of testing and compatibility). However some (at least the ones I was trying) are very basic, and they don't allow the "Save object as.." or uncompress it. I like the feature of displaying the PDF for preview :)

I’m writing a little tool for analysing a pdf and its internals, if author is interested or anyone else, just let me know :)

Hi! I just wanted to post this project into HN and collect some feedbacks. Don't feel bad to just say "lol your approach won't work" because static analysis has always limits (e.g. obfuscated software) and many more.

The main goal was to build (another) software that given a PE executable in input, parse it and outputs some indicators of the similarity of it across the ransomware I studied (the classic ones). Naturally most of the advanced ransomware employed nowadays is able to circumvent it, only with a little bit of modifications. TL;DR: "a more advanced" pattern matching.

The description is here as follows:

MicroSCOPE is a software program developed through the Go programming language that allows for the detection of a precise category of malicious software. The program is designed specifically for a class of malicious programs called ransomware whose operation consists of data encryption and ransom demand in order to gain access to the content again.

In particular, MicroSCOPE was developed to be able to support two of the mainly used formats: the PE (Portable Executable) format for Windows platforms and ELF (Executable and Linking Format) for Unix-based platforms. Through the application of certain heuristics, MicroSCOPE is able to assign a score that corresponds to the level of dangerousness of the file being analyzed. The higher the score, the more similar characteristics the software will exhibit to ransomware that has already been studied. The heuristics have been extrapolated from numerous case studies and will be improved over time.

Ops! Forgot to write about it (otherwise it would be so long). I did not mention the tools, but I was mainly referring to Hopper Decompiler/Disassembler (definitely no no for me). Altough it seemed the natural choice for reverse engineering macOS applications and daemons, it failed disastrousely on reverse engineering fairplayd. This is where obfuscation is really good at: feeling pain. Hopper tried to disassemblate the binary but still no luck (there was an error due to some bogus instructions referred by a dead branch). I'm seeing improvements for Hopper release by release, but there were some regressions that I noticed..

I tried to import it into Ghidra and it missed some informations during the pass of stack analysis. At the end it was a mess result to read, so I ended it up with IDA (free because I'm a student). Binary ninja also needs some license, I'm trying to afford it.

1 hour ago? Why should I send again the URL?

I'm sure I did not send anything, that's very weird. @mod what happened here? Also how can I possibly send the same article if HN checks if any other articles has the exact same url?

Tim Ferrell, from SpaceX's security team, for sending us a testing dish with root access.

They probably had a NDA or something that prohibits them to release the firmware publicy.

Thanks for your comment. This obfuscation scheme is used only to complicate any attempt to reverse engineering (disassembling, decompilation) of the two processes involved in FairPlay DRM (I'm mainly talking about CoreFP and Fairplayd). Attackers need to spend more time on retrieving the original business logic. For sure, it's not the most hyper-defense technology Apple has employed (think about Secure Enclave).

a properly implemented remote attestation and security architecture does obsolete it [obfuscation]

I'm not sure I've understood this part. So, if Apple implements remote attestation, would it be more difficult for attackers to reverse engineering the application? I am probably missing a point, would you mind if I ask you to expand that?

I'm having doubts about what you mean about "TEE", I suppose it's term for "trusted execution environment". I'm not sure about I might answer, and it's probable the right question to ask to Apple engineering. I think Apple can use the same technology they used for Apple Pay via the Secure Chip. I'm talking mainly about exchanging keys via servers, decryption and then serve the content via a sort of "frontend". I wish to know more about TEE to give you a more detailed answer.

EDIT: thinking about secure enclave.. maybe (still an hypothesis) the chip does not have the bandwidth to perform decryption just in time. Probably it's a huge cost for Apple to apply something like that.