News for hackers. Stuff that matters.
Re:NSO Group's iPhone Zero-Days used against a UAE Human Rig... by SanPilot on Thursday August 25, 2016 @06:10PM (#12362884)
I'm a beginner when it comes to software development (mostly web development), but it seems to me that the majority of complex exploits like this involve some type of memory overflow and subsequent code execution.

Shouldn't there be methods for detecting these kinds of things in source code or more priority given to preventing it in the C/low-level community?

Re:NSO Group's iPhone Zero-Days used against a UAE Human Rig... by startling on Thursday August 25, 2016 @08:31PM (#12363519)
There are. "(Kernel) address space layout randomization" is one of them. It was circumvented here; that's part of why this is impressive.
Re:NSO Group's iPhone Zero-Days used against a UAE Human Rig... by SanPilot on Monday August 29, 2016 @11:32PM (#12387330)
How is it possible to put the malicious code in the correct memory spaces? Unless the attacker had a full image of the memory, I don't see how this can be accomplished.
Re:NSO Group's iPhone Zero-Days used against a UAE Human Rig... by startling on Wednesday August 31, 2016 @02:21AM (#12396353)
The second bit of the exploit chain, CVE-2016-4655, leads to disclosure of kernel memory addresses. Once a single memory address is known, you can calculate the random offset of the kernel, and then exploit the third part to overwrite the return address and return into specific chunks of kernel code ("Return Oriented Programming"), whose addresses you computed from the offset + a fixed code location. These can let you e.g. install your payload.