this post was submitted on 12 Apr 2025
101 points (95.5% liked)

Technology

69346 readers
3375 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
[–] Neverclear@lemmy.dbzer0.com 21 points 2 weeks ago* (last edited 2 weeks ago) (10 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.

[–] Malfeasant@lemm.ee 4 points 2 weeks ago* (last edited 2 weeks ago) (6 children)

an x86 assembly programmer

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

[–] QBertReynolds@sh.itjust.works 4 points 1 week ago (5 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.

[–] Malfeasant@lemm.ee 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.

[–] QBertReynolds@sh.itjust.works 3 points 1 week ago (1 children)

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

[–] Malfeasant@lemm.ee 0 points 1 week ago (1 children)

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

[–] QBertReynolds@sh.itjust.works 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.

[–] Malfeasant@lemm.ee 0 points 1 week ago

Hey look, I'm good at something.

load more comments (3 replies)
load more comments (3 replies)
load more comments (6 replies)