this post was submitted on 12 Apr 2025
103 points (97.2% liked)

Technology

69156 readers
3015 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related news or articles.
  3. Be excellent to each other!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, this includes using AI responses and summaries. To ask if your bot can be added please contact a mod.
  9. Check for duplicates before posting, duplicates may be removed
  10. Accounts 7 days and younger will have their posts automatically removed.

Approved Bots


founded 2 years ago
MODERATORS
 

"According to the research published by Hackmosphere, the technique works by avoiding the conventional execution path where applications call Windows API functions through libraries like kernel32.dll, which then forwards requests to ntdll.dll before making the actual system call to the kernel."

Additional Information:

https://www.hackmosphere.fr/bypass-windows-defender-antivirus-2025-part-1/

https://www.hackmosphere.fr/bypass-windows-defender-antivirus-2025-part-2/

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 21 points 1 week ago* (last edited 1 week ago) (3 children)

XOR cleartext once with a key you get ciphertext. XOR the ciphertext with the same key you get the original cleartext. At its core this is the way the old DES cipher works.

A bit of useful trivia: If you XOR any number with itself, you get all zeros. You can see this in practice when an assembly programmer XOR's a register with itself to clear it out.

[–] [email protected] 13 points 1 week ago (1 children)

That's how it was done in the old days to save a few cycles in Z80 assembly. XOR A instead of LD A, 0.

[–] [email protected] 3 points 1 week ago

I use that daily in my accelerator work.

Once you learn the trick, you just use it naturally.

[–] [email protected] 5 points 1 week ago

Apple had this undocumented function for screenshotting back on iOS 3.1, and kind of let you use it while waiting for better frameworks in iOS 4.0

At some point they started rejecting your app automatically if they found the symbol for that function in your app. I didn't want to leave my 3.1 users in the dust for no reason, so I did the same trick to obfuscate the symbol name before dynamically linking it in.

It worked right up until they stopped supporting iOS 3.1 completely.

[–] [email protected] 4 points 1 week ago* (last edited 1 week ago) (1 children)

an x86 assembly programmer

Ftfy. not all CPUs have an xor register with itself instruction.

[–] [email protected] 4 points 1 week ago (1 children)

There are a lot more architectures than just x86 that are capable of XORing a register with itself (ie. ARM and RISC-V), and if you took OP to mean the accumulation register specifically, pretty much all CPUs going back as far as I can think have had that functionality.

[–] [email protected] 0 points 1 week ago (1 children)

Yes, but it's not universal that xoring a register with itself is more performant than simply loading it with 0.

[–] [email protected] 3 points 1 week ago (1 children)

I never made that claim, nor did the person you corrected.

[–] [email protected] 0 points 1 week ago (1 children)

Yes, but that's why x86 assembly programmers do it...

[–] [email protected] 1 points 1 week ago (1 children)

No argument there. It's also why it's done in ARM, 8080, SM83, z80, 6502, and basically every other assembly language. It's only not done in RISC-V because you can fold 0 into any instruction as an operand, therefore eliminating the need to clear a register before an instruction.

So why correct the person with a more narrow claim that makes it seem like xor being faster than loading zero is a rarity in CPU architectures? If I said "birds can fly", and your response was "eagles can fly. Ftfy. Not all birds can fly", it would be both true and utterly unhelpful.

[–] [email protected] 0 points 1 week ago

Hey look, I'm good at something.