Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    D

    Didier Stevens

    blog.didierstevens.com · Personal blog · on HN since 2010

    Didier Stevens, a security researcher, writes about malicious PDF analysis and publishes tools for reverse engineering files.

    Visit blogHN submissions
    SecurityOpen Source & Linux
    What HN says

    HN commenters recommend his PDF tools as a Swiss Army knife for analyzing suspicious documents and for understanding the PDF format's quirks.

    Stats for nerds
    27HN people shared it
    11linked in comments
    197story points
    Oct 2025last shared
    2010people per year2025

    Top posts on HN

    1. 1
      Cracking Encrypted PDFs
      1 person · 140 points · first shared 2017 · 16 comments on HN
    2. 2
      XORSearch and XORStrings – Reverse engineering files
      1 person · 36 points · first shared 2015 · 4 comments on HN
    3. 3
      Escape from PDF
      4 people · 7 points · first shared 2010 · Discussion on HN
    4. 4
      LockIfNotHot Uses Temperature Sensor to Lock Your PC When You Leave Your Chair
      1 person · 5 points · first shared 2011 · 4 comments on HN
    5. 5
      Analysis – ExifTool, Ole Files and FlashPix Files
      1 person · 2 points · first shared 2019 · Discussion on HN
    6. 6
      That Is Not My Child Process
      1 person · 2 points · first shared 2017 · Discussion on HN
    7. 7
      Malicious PDF Document Analysis with pdf-parser.py
      7 people · 1 points · first shared 2014 · Discussion on HN
    8. 8
      New Tool: What Is New?
      1 person · 1 points · first shared 2018 · Discussion on HN
    9. 9
      Embedding and Hiding Files in PDF Documents
      1 person · 1 points · first shared 2019 · Discussion on HN
    10. 10
      TaskManager.xls - a simple task manager implemented in Excel/VBA
      1 person · 1 points · first shared 2011 · Discussion on HN

    What HN people wrote when they linked it

    • westurnerFeb 2024

      What is the MIME type of a .tar file; and what are the MIME types of the constituent concatenated files within an archive format like e.g. tar?

      hachoir/subfile/main.py: https://github.com/vstinner/hachoir/blob/main/hachoir/subfile/main.py

      File signature: https://en.wikipedia.org/wiki/File_signature

      PhotoRec: https://en.wikipedia.org/wiki/PhotoRec

      "File Format Gallery for Kaitai Struct"; 185+ binary file format specifications: https://formats.kaitai.io/

      Table of ': https://formats.kaitai.io/xref.html

      AntiVirus software > Identification methods > Signature-based detection, Heuristics, and ML/AI data mining: https://en.wikipedia.org/wiki/Antivirus_software#Identification_methods

      Executable compression; packer/loader: https://en.wikipedia.org/wiki/Executable_compression

      Shellcode database > MSF: https://en.wikipedia.org/wiki/Shellcode_database

      sigtool.c: https://github.com/Cisco-Talos/clamav/blob/main/sigtool/sigtool.c

      clamav sigtool: https://www.google.com/search?q=clamav+sigtool

      https://blog.didierstevens.com/2017/07/14/clamav-sigtool-decode-sigs/ :

      sigtool –-find-sigs "$name" | sigtool –-decode-sigs List of file signatures: https://en.wikipedia.org/wiki/List_of_file_signatures

      And then also clusterfuzz/oss-fuzz scans .txt source files with (sandboxed) Static and Dynamic Analysis tools, and `debsums`/`rpm -Va` verify that files on disk have the same (GPG signed) checksums as the package they are supposed to have been installed from, and a file-based…

    • EvanAndersonJun 2021

      This tool is based on the old (and deprecated) Software Restriction Policy (SRP) API. I see some posters here stating that AppLocker and SRP are the same thing. Their goal is the same, but they're implemented completely differently.

      SRP is enforced in user mode, and it can be circumvented by hooking user mode API calls. Back in 2005 Mark Russinovich blogged about bypassing SRP: https://web.archive.org/web/20061219234012/http://blogs.technet.com/markrussinovich/archive/2005/12/12/circumventing-group-policy-as-a-limited-user.aspx

      AppLocker does the enforcement in kernel-mode, so it can't be bypassed with DLL injection. (The kernel side could be patched by a user with local Administrator rights, but that runs afoul of Kernel Patch Protection and raises the bar significantly for an attacker. Users should be using unprivileged accounts for day-to-day work anyway... >grumble<)

      SRP in whitelist mode is more difficult to bypass, but it's still possible to patch it out by using WriteProcessMemory: https://blog.didierstevens.com/2008/06/25/bpmtk-bypassing-srp-with-dll-restrictions/

      I'm not suggesting that this tool isn't useful, but it's not the same thing as AppLocker or Windows Defender Application Control. If SRP ends up being used significantly as a defense attackers will just incorporate bypassing it into their payloads / strategies (start out w/ getting the user to run a Word macro that patches Word's copy of ADVAPI32.DLL, etc).

    • blincolnSep 2023

      The PDF specification is wild. My current favourite trivia is that it supports all of Photoshop's layer blend modes for rendering overlapping elements.[1] My second-favourite is that it supports appended content that modifies earlier content, so one should always look for forensic evidence in all distinct versions represented in a given file.[2]

      It's also a fun example of the futility of DRM. The spec includes password-based encryption, and allows for different "owner" and "user" passwords. There's a bitfield with options for things like "prevent printing", "prevent copying text", and so forth,[3] but because reading the document necessarily involves decrypting it, one can use the "user" password to open an encrypted PDF in a non-compliant tool,[4] then save the unencrypted version to get an editable equivalent.

      [1] "More than just transparency" section of https://blog.adobe.com/en/publish/2022/01/31/20-years-of-transparency-in-pdf

      [2] https://blog.didierstevens.com/2008/05/07/solving-a-little-pdf-puzzle/

      [3] Page 61 of https://opensource.adobe.com/dc-acrobat-sdk-docs/pdfstandards/PDF32000_2008.pdf

      [4] For example, a script that uses the pypdf library.

    • thereinOct 2017

      This should do:

      > In the first demo, I just select the PDF document with one click. This is enough to exploit the vulnerability, because the PDF document is implicitly read to gather extra information.

      > In the second demo, I change the view to Thumbnails view. In a thumbnail view, the first page of a PDF document is rendered to be displayed in a thumbnail. Rendering the first page implies reading the PDF document, and hence triggering the vulnerability.

      > In the third demo, I use my special PDF document with the malformed stream object in the metadata. When I hover with the mouse cursor over the document (I don’t click), a tooltip will appear with the file properties and metadata. But with my specially crafted PDF document, the vulnerability is triggered because the metadata is read to display the tooltip…

      https://blog.didierstevens.com/2009/03/04/quickpost-jbig2decode-trigger-trio/

    • dhxJun 2012

      TLDR: X.509 certificate collision attack where the uptime of the signing server appears to have been guessed successfully to an accuracy of 1 millisecond (!)

      Some further technical details:

      Dump of the full certificate chain: http://blog.didierstevens.com/2012/06/06/flame-authenticode-dumps-kb2718704/

      Technical analysis and information about the certificate from Microsoft (MSRC): https://blogs.technet.com/b/srd/archive/2012/06/06/more-information-about-the-digital-certificates-used-to-sign-the-flame-malware.aspx

      Discussion on the cryptography@randombit.net mailing list: http://www.mail-archive.com/cryptography@randombit.net/msg02916.html

    • kogirMar 2024

      svchost.exe is literally what the name implies. It's a generic service host. You pass it a dll and an entrypoint (via command line arguments and registry keys) and it runs it.

      You should look at which thing it's actually running to see what's using all your CPU.

      Some articles detailing what it does and how it works: [1] https://nasbench.medium.com/demystifying-the-svchost-exe-process-and-its-command-line-options-508e9114e747 [2] https://pusha.be/index.php/2020/05/07/exploration-of-svchost-exe-p-flag/ [3] https://blog.didierstevens.com/2019/10/29/quickpost-running-a-service-dll/

    Related

    0day.rocksblog.0day.rocks16 people

    France might be losing its first big information war

    0day.rocks
    Personal · last shared 2020
    Krebs on Securitykrebsonsecurity.com1.4k people

    Whistleblower: Ubiquiti Breach “Catastrophic”

    Krebs on Security
    Personal · last shared 2026
    I Don't Play Dartsidontplaydarts.com81 people

    Detecting the use of "curl | bash" server-side

    I Don't Play Darts
    Personal · last shared 2024
    RSnakeha.ckers.org57 people

    XSS (Cross Site Scripting) Cheat Sheet

    RSnake
    Personal · last shared 2014
    Cloudflare Blogblog.cloudflare.com2.9k people

    We Stood Up to a Patent Troll and Won

    Cloudflare Blog
    Company · last shared 2026
    Dustridustri.org56 people

    Horrible edge cases when dealing with music

    Dustri
    Personal · last shared 2026
    Trail of Bits Blogblog.trailofbits.com278 people

    RSA is a fragile cryptosystem

    Trail of Bits Blog
    Company · last shared 2026
    Errata Securityblog.erratasec.com357 people

    Extracting the SuperFish certificate

    Errata Security
    Personal · last shared 2025