Skip to content

Instantly share code, notes, and snippets.

@gregclermont
gregclermont / README.md
Last active August 29, 2015 13:57
Fix for `app error: deadlock; recursive locking (ThreadError)` with Rack::Deflater in rack 1.4.5 (rails 3.2)

This file combines 7bda8d4 & d860397 from rack 1.5.2 to fix a race condition in Rack::Deflater. It can be used to patch rack 1.4.5 for apps that can't upgrade to rack 1.5.2 (e.g. as an initializer in a rails 3.2 app)

edit: added 6c186f2, too

import "pe"
rule ms13_098 {
condition:
pe.is_dll() and filesize < 10MB and pe.data_directories[
pe.IMAGE_DIRECTORY_ENTRY_SECURITY].size > 0x8000
and (
(uint16be(pe.data_directories[pe.IMAGE_DIRECTORY_ENTRY_SECURITY].virtual_address+8) == 0x3082
and uint16be(pe.data_directories[pe.IMAGE_DIRECTORY_ENTRY_SECURITY].virtual_address+10) <