Image of Linux Kernel Development (3rd Edition)
Image of Android Wireless Application Development
Image of Operating System Concepts
Image of XSLT 2.0 and XPath 2.0 Programmer's Reference (Programmer to Programmer)

UEFI Utility to Read TPM 2.0 PCRs

In this post, I discuss a number of key TPM 2.0 features such as multiple algorithm support and PCR banks, and provide the source code for a UEFI shell utility to display the digests from the first 24 PCRs of a TPM 2.0 implementation.

Use 010 Editor to Obtain Header Fields From Intel Microcode Binary Files

In this post, I use an 010 Editor script and template to extract and display specific microcode header fields for a set of Intel microcode binary blobs.

Examining Intel Microcode in Lenovo Firmware Updates

This post demonstrates how to extract Intel microcode updates from a Lenovo firmware update using UEFItool and subsequently use an 010 Editor template to extract useful information from the extracted Intel microcode updates.

RNG Protocol Error in Lenovo ThinkPad Firmware

This post discusses the UEFI 2.4 Random Number Generator protocol and Lenovo’s current implementation of the protocol and suggests there is an error in their implementation.

Lenovo ThinkPwn POC Ported to UDK2015

This blog contains the source code for my UDK2015 port of the ThinkPwn Oday proof of concept demonstration.