수수께끼 살인마가 연쇄살인을 일으키고 있다. 피해자를 찍어 그에게 수수께끼를 내는데 맞히지 못하면 죽는 것이다. 그러던 와중에 신학대학에서 공부밖에 모르는 케빈(마크 블루카스)이 피해자로 지목되고 역시 그에게도 수수께끼가 주어지는데 다행히 살아남는다. 케빈은 바로 경찰에 가 사건을 신고하고 경찰인 제니퍼(저스틴 와델)는 얼마 전 이 살인마로 인해 남동생을 잃은 상태라 케빈의 사건에 끼어들어 수사를 펼친다. 그리고 보험조사원으로 일하고 있는 친구 샘이 케빈의 곁에 머물며 함께 수수께끼를 풀어간다. 케빈은 살인마로부터 죄를 시인하라는 말을 계속 들어 돌아보고 싶지 않은 과거를 어쩔 수 없이 돌아보며 샘, 제니퍼와 함께 범인이 누굴까 추리해 나간다.