fix(dicompot): close 3 DICOM association fingerprint tells (#3155) - #3181
Conversation
Persona Implementation Class UID now returned in A-ASSOCIATE-AC. Max PDU Length fixed at persona constant 16384, never mirrored from peer. A-ASSOCIATE-RJ on unrecognized Called AE title and A-ABORT on malformed first PDU. Closes #3155
Strix Security ReviewNo security issues found. Updated for Reviewed by Strix |
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
There was a problem hiding this comment.
Reviewed all six changed files: the core logic in aetitle.go, the handleConn wiring in main.go, the test updates, and two documentation edits. The PR hardens the dicompot DICOM honeypot's protocol fidelity by (1) adding persona-consistent Implementation Class UID/Version Name and a fixed 16384 Max PDU Length to the A-ASSOCIATE-AC, (2) rejecting unrecognized Called AE Titles with a proper A-ASSOCIATE-RJ, and (3) answering malformed first PDUs with an A-ABORT. The buffer peek is deadline-bounded and safely indexed only after a successful 42-byte read; PDU patching operates exclusively on the honeypot's own generated responses with fail-closed fallback to forwarding original bytes; fixed response PDUs present no amplification vector; and the new log events reuse the existing JSON-encoded event struct with no new injection surface. No security control was removed and no untrusted input reaches a dangerous sink in the changed code. No findings to report.
Reviewed by Strix
Configure security review settings
Persona Implementation Class UID now returned in A-ASSOCIATE-AC.
Max PDU Length fixed at persona constant 16384, never mirrored from peer.
A-ASSOCIATE-RJ on unrecognized Called AE title and A-ABORT on malformed first PDU.
Closes #3155