<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>omiilgo.com</title><description>Security research notes: web, binary, mobile and CTF</description><link>https://omiilgo.com/en/</link><language>en</language><item><title>Android ARM64 initializers: relocations and JNI timing</title><link>https://omiilgo.com/en/posts/android-arm64-initializers-relocations-jni-timing/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/android-arm64-initializers-relocations-jni-timing/</guid><description>Trace zero initializer slots through ELF relocations and loader metadata. A minimal NDK fixture separates file edits from constructor timing, ART class loading, JNI registration and instrumentation readiness.</description><pubDate>Tue, 14 Oct 2025 04:00:00 GMT</pubDate><category>android</category><category>reverse-engineering</category></item><item><title>Android trust: modules, root stores and process views</title><link>https://omiilgo.com/en/posts/android-conscrypt-roots-mount-namespaces/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/android-conscrypt-roots-mount-namespaces/</guid><description>Trace Android certificate trust across Conscrypt and framework selectors, active APEX modules, process mount namespaces, submounts and disabled roots, using fixed source revisions and Pixel 3a records.</description><pubDate>Thu, 05 Jun 2025 04:00:00 GMT</pubDate><category>android</category><category>reverse-engineering</category></item><item><title>CCleaner&apos;s helper: socket access versus task authorization</title><link>https://omiilgo.com/en/posts/ccleaner-helper-socket-task-authorization/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/ccleaner-helper-socket-task-authorization/</guid><description>Trace CCleaner 1.18.30 from its Unix socket and eleven-byte framing markers to NSTask. Separate installation approval, argument splitting, and privileged execution from the limits of the historical evidence.</description><pubDate>Tue, 25 Mar 2025 04:00:00 GMT</pubDate><category>macos</category><category>reverse-engineering</category></item><item><title>CVE-2025-24200: USB policy and lock-state authorization</title><link>https://omiilgo.com/en/posts/cve-2025-24200-usb-lock-state-authorization/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/cve-2025-24200-usb-lock-state-authorization/</guid><description>Separate accessibility prompts from backend policy writes. Use build differences, Boolean conditions, and address models to distinguish patch evidence, debugging observations, and the hardware hypothesis.</description><pubDate>Fri, 14 Feb 2025 04:00:00 GMT</pubDate><category>ios</category><category>reverse-engineering</category></item><item><title>CVE-2024-2961: iconv writes and PHP object lifetimes</title><link>https://omiilgo.com/en/posts/cve-2024-2961-iconv-php-bucket-lifetimes/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/cve-2024-2961-iconv-php-bucket-lifetimes/</guid><description>Trace a fixed-byte encoding overflow through PHP stream filters. Separate valid length, allocation requests, and ownership, then examine Zend free lists and error cleanup.</description><pubDate>Thu, 13 Jun 2024 04:00:00 GMT</pubDate><category>memory-safety</category><category>reverse-engineering</category></item><item><title>Android&apos;s two layers: DEX, DGC, and method restoration</title><link>https://omiilgo.com/en/posts/android-dex-dgc-runtime-bytecode-restoration/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/android-dex-dgc-runtime-bytecode-restoration/</guid><description>Trace eight hidden DEX files into an external method pool. Separate RC4 key derivations, DGC indexes, and instruction boundaries, then examine ART&apos;s conditional repair point.</description><pubDate>Tue, 06 Feb 2024 04:00:00 GMT</pubDate><category>android</category><category>art</category><category>reverse-engineering</category></item><item><title>Hyper-V IUM: locating the guest debugging context</title><link>https://omiilgo.com/en/posts/hyperv-ium-guest-context-debugging/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/hyperv-ium-guest-context-debugging/</guid><description>Trace VP, VTL, and VMCS state at a VTL return. Separate raw offsets from architectural field encodings, then correlate two address translations, a stack return value, and call bytes.</description><pubDate>Thu, 07 Sep 2023 04:00:00 GMT</pubDate><category>reverse-engineering</category><category>windows</category></item><item><title>Windows tokens: creation, impersonation, and actual access</title><link>https://omiilgo.com/en/posts/windows-token-creation-effective-impersonation/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/windows-token-creation-effective-impersonation/</guid><description>Separate token creation, effective thread impersonation, and file access. Examine error 1346, logon-session comparisons, and the StorSvc loading path, with validated SID and buffer-size checks.</description><pubDate>Thu, 17 Aug 2023 04:00:00 GMT</pubDate><category>reverse-engineering</category><category>windows</category></item><item><title>XNU PAC: context switches and thread-state authentication</title><link>https://omiilgo.com/en/posts/xnu-arm64-pac-context-state-authentication/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/xnu-arm64-pac-context-state-authentication/</guid><description>Trace PAC state across boot, shared regions, scheduling, and exceptions. Separate hardware keys from software values and discriminators, and verify jophash inputs, carry masking, and accepted helper keys.</description><pubDate>Mon, 06 Dec 2021 04:00:00 GMT</pubDate><category>ios</category><category>memory-safety</category><category>reverse-engineering</category></item><item><title>ARM64 KPTI: roots, ranges, and exception entry</title><link>https://omiilgo.com/en/posts/arm64-kpti-roots-ranges-exception-entry/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/arm64-kpti-roots-ranges-exception-entry/</guid><description>Compare Linux trampolines with XNU&apos;s TCR switch. Track VBAR, TTBR, ASID, and X30 ordering, explain the T1SZ direction, and examine how fixed vectors survive both translation views.</description><pubDate>Mon, 29 Nov 2021 04:00:00 GMT</pubDate><category>ios</category><category>memory-safety</category><category>reverse-engineering</category></item><item><title>DNS Beacon: fragment reassembly and ciphertext authentication</title><link>https://omiilgo.com/en/posts/dns-beacon-fragment-reassembly-authentication/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/dns-beacon-fragment-reassembly-authentication/</guid><description>Reconstruct TXT downloads and query-name uploads from DNS Beacon records. Separate controls from data, detect duplicate or missing fragments, and authenticate three ciphertext envelopes before interpreting them.</description><pubDate>Mon, 29 Nov 2021 04:00:00 GMT</pubDate><category>malware-analysis</category><category>reverse-engineering</category></item><item><title>KTRR and CTRR: ranges and lockdown order</title><link>https://omiilgo.com/en/posts/ios-ktrr-ctrr-ranges-lockdown-order/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/ios-ktrr-ctrr-ranges-lockdown-order/</guid><description>Follow boot-map reduction through CTRR lockdown. Check physical endpoints, KTRR versus CTRR ranges, generation-specific TLB sequencing, debug controls, and conditional CPU reset entry.</description><pubDate>Mon, 29 Nov 2021 04:00:00 GMT</pubDate><category>ios</category><category>memory-safety</category><category>reverse-engineering</category></item><item><title>iOS PPL: entry state and physical-page ownership</title><link>https://omiilgo.com/en/posts/ios-ppl-entry-state-page-ownership/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/ios-ppl-entry-state-page-ownership/</guid><description>Trace boot setup, service dispatch, and page handoff in an ARM64 kernel. Separate per-CPU state, ownership, and permission encodings, and check stack strides, atomic updates, and exception recovery.</description><pubDate>Fri, 26 Nov 2021 04:00:00 GMT</pubDate><category>ios</category><category>memory-safety</category><category>reverse-engineering</category></item><item><title>DCSync and DCShadow: RPC context determines the alert</title><link>https://omiilgo.com/en/posts/dcsync-dcshadow-rpc-context-detection/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/dcsync-dcshadow-rpc-context-detection/</guid><description>Correlate interface negotiation, context IDs, and opnums in directory replication. Examine flowbit blind spots, DCShadow&apos;s reverse pull, byte order, protocol-aware rules, and deployment regression cases.</description><pubDate>Mon, 15 Nov 2021 04:00:00 GMT</pubDate><category>reverse-engineering</category><category>windows</category></item><item><title>x86 shellcode: hidden assumptions in a ROR13 resolver</title><link>https://omiilgo.com/en/posts/x86-shellcode-ror13-resolver-assumptions/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/x86-shellcode-ror13-resolver-assumptions/</guid><description>Recover nine API constants through call/pop, PEB list offsets, and PE exports. Check signed byte normalization, capacity-dependent hashes, collisions, standard-handle relationships, and exit conditions.</description><pubDate>Thu, 02 Sep 2021 04:00:00 GMT</pubDate><category>malware-analysis</category><category>reverse-engineering</category><category>windows</category></item><item><title>WdNisDrv: flow contexts and device-access boundaries</title><link>https://omiilgo.com/en/posts/wdnisdrv-flow-context-device-boundaries/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/wdnisdrv-flow-context-device-boundaries/</guid><description>Trace WFP filters, flow contexts, and asynchronous notifications in WdNisDrv. Separate documented injection behavior, service-SID access, and three buffer defects from claims about default reachability.</description><pubDate>Tue, 13 Jul 2021 04:00:00 GMT</pubDate><category>memory-safety</category><category>reverse-engineering</category><category>windows</category></item><item><title>CVE-2021-24086: nested IPv6 reassembly and a null write</title><link>https://omiilgo.com/en/posts/cve-2021-24086-nested-ipv6-reassembly/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/cve-2021-24086-nested-ipv6-reassembly/</guid><description>Trace nested IPv6 fragments from patch checks to a 65,528-byte header request. Follow the unchecked NDIS result separately from a later call, and connect memory layout, protocol limits, and the denial-of-service crash.</description><pubDate>Wed, 07 Apr 2021 04:00:00 GMT</pubDate><category>memory-safety</category><category>reverse-engineering</category><category>windows</category></item><item><title>Android emulators: task lists and kernel relocation anchors</title><link>https://omiilgo.com/en/posts/android-emulator-kernel-structure-location/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/android-emulator-kernel-structure-location/</guid><description>Follow task discovery, SELinux state differences, and cold-boot relocation in an Android 11 x86_64 AVD. Separate configuration-dependent layouts, structural evidence, arithmetic models, and runtime validation.</description><pubDate>Thu, 04 Mar 2021 04:00:00 GMT</pubDate><category>android</category><category>reverse-engineering</category></item><item><title>MSVC XFG: from type encoding to call-site hashes</title><link>https://omiilgo.com/en/posts/msvc-xfg-type-hash-encoding/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/msvc-xfg-type-hash-encoding/</guid><description>Reconstruct the x64 C type-hash pipeline in an MSVC 19.28 preview build. Validate two prototypes and separate normalization, recursive digests, back-end masks, entry markers, and unsupported type cases.</description><pubDate>Thu, 12 Nov 2020 04:00:00 GMT</pubDate><category>memory-safety</category><category>reverse-engineering</category><category>windows</category></item><item><title>CVE-2020-16898: an eight-byte RDNSS boundary mismatch</title><link>https://omiilgo.com/en/posts/cve-2020-16898-rdnss-parser-boundaries/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/cve-2020-16898-rdnss-parser-boundaries/</guid><description>Trace RDNSS length parity through two parser passes and the NdisGetDataBuffer copy path. Verify the eight-byte mismatch with a model, then separate fragment handling, stack corruption, and code-execution claims.</description><pubDate>Fri, 16 Oct 2020 04:00:00 GMT</pubDate><category>memory-safety</category><category>reverse-engineering</category><category>windows</category></item><item><title>iOS Flutter: verify routing and TLS as separate boundaries</title><link>https://omiilgo.com/en/posts/flutter-ios-routing-tls-analysis/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/flutter-ios-routing-tls-analysis/</guid><description>Separate VPN routing, transparent proxying, Mach-O address translation, and TLS decisions in a 2020 ARM64 Flutter sample. Check constant-search candidates, a 32-byte prefix, and correlated proxy and device results.</description><pubDate>Fri, 12 Jun 2020 04:00:00 GMT</pubDate><category>flutter</category><category>ios</category><category>reverse-engineering</category></item><item><title>VBA signatures: when source and compiled cache disagree</title><link>https://omiilgo.com/en/posts/vba-signature-source-cache-divergence/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/vba-signature-source-cache-divergence/</guid><description>A Word document&apos;s source says Hello while its P-Code contains calc and Shell. Separate signature coverage, cache selection, and macro policy, then design a one-byte control experiment and check V3 signature deployment.</description><pubDate>Thu, 04 Jun 2020 04:00:00 GMT</pubDate><category>malware-analysis</category><category>office</category><category>vba</category></item><item><title>Evidence of VBA purging in a malicious PowerPoint add-in</title><link>https://omiilgo.com/en/posts/evidence-of-vba-purging-found-in-malicious-documents/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/evidence-of-vba-purging-found-in-malicious-documents/</guid><description>A malicious PowerPoint add-in keeps only compressed VBA source, with a zero-length cache. Walk its VBA storage with zipdump.py and oledump.py, see why rules keyed on cached strings miss VBA purging, and cross-check structure against behavior.</description><pubDate>Sat, 15 Feb 2020 20:00:00 GMT</pubDate><category>maldoc</category><category>malware-analysis</category><category>office</category><category>vba</category></item><item><title>checkm8: where a stale DFU pointer meets USB callbacks</title><link>https://omiilgo.com/en/posts/checkm8-dfu-object-lifetime/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/checkm8-dfu-object-lifetime/</guid><description>Follow the DFU buffer, USB transfer state, and reset cleanup in t8015 SecureROM. Use a lifetime model and request layout to separate dangling references, memory reuse, and callback control despite valid transfer lengths.</description><pubDate>Tue, 29 Oct 2019 04:00:00 GMT</pubDate><category>ios</category><category>memory-safety</category><category>reverse-engineering</category></item><item><title>Two DLL architectures inside an Excel document&apos;s embedded PNG</title><link>https://omiilgo.com/en/posts/excel-embedded-png-dll-analysis/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/excel-embedded-png-dll-analysis/</guid><description>Trace an Excel document from OLE streams to two adjacent PE payloads. Check extraction boundaries and overlay hashes, then separate VBA architecture-selection declarations from evidence of actual execution.</description><pubDate>Wed, 18 Sep 2019 04:00:00 GMT</pubDate><category>maldoc</category><category>malware-analysis</category><category>office</category><category>vba</category></item><item><title>Flutter ARMv7 traffic: separate routing from TLS verification</title><link>https://omiilgo.com/en/posts/flutter-armv7-proxy-tls-analysis/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/flutter-armv7-proxy-tls-analysis/</guid><description>Separate proxy routing from TLS trust in a 2019 Android ARMv7 Flutter build. Trace handshake errors and string references to a Thumb entry point, then check return values, side effects, and plugin-layer boundaries.</description><pubDate>Tue, 13 Aug 2019 04:00:00 GMT</pubDate><category>android</category><category>flutter</category><category>reverse-engineering</category></item><item><title>Finding obfuscated OkHttp pinning through parameter types</title><link>https://omiilgo.com/en/posts/obfuscated-okhttp-certificate-pinning/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/obfuscated-okhttp-certificate-pinning/</guid><description>Compare three request paths in normal and obfuscated Android 7.1.2 builds. Separate platform policy from OkHttp pinning, then identify the obfuscated method through Smali descriptors, arguments, and Builder timing.</description><pubDate>Tue, 02 Apr 2019 04:00:00 GMT</pubDate><category>android</category><category>okhttp</category><category>reverse-engineering</category></item><item><title>Android runtime restrictions: namespaces and Hidden API</title><link>https://omiilgo.com/en/posts/android-runtime-restrictions-bypass/</link><guid isPermaLink="true">https://omiilgo.com/en/posts/android-runtime-restrictions-bypass/</guid><description>Trace native-library and Hidden API restrictions through soinfo and Runtime in Android 7–9, distinguish inline field access from symbol imports, and define a controlled validation procedure.</description><pubDate>Wed, 27 Mar 2019 04:00:00 GMT</pubDate><category>android</category><category>art</category><category>reverse-engineering</category></item></channel></rss>