C-Sto / gosecretsdump

Dump ntds.dit really fast
GNU General Public License v3.0
366 stars 47 forks source link

panic: runtime error: slice bounds out of range #3

Closed c0d3z3r0 closed 4 years ago

c0d3z3r0 commented 4 years ago

Hi there, I have another one ;)

$ gosecretsdump -system SYSTEM -ntds ntds.dit -status -out secretsdump.txt
Writing to file  secretsdump.raw.txt 
panic: runtime error: slice bounds out of range

goroutine 33 [running]:
github.com/c-sto/gosecretsdump/pkg/ditreader.NewSAMRUserProperties(0xc427bc9d40, 0xd, 0xd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
        /home/scruffy/go/src/github.com/c-sto/gosecretsdump/pkg/ditreader/samr.go:48 +0x578
github.com/c-sto/gosecretsdump/pkg/ditreader.DitReader.decryptSupp(0x0, 0xc42bc30980, 0x10, 0x10, 0x10000, 0x4fda10, 0x0, 0x0, 0x4fda10, 0x0, ...)
        /home/scruffy/go/src/github.com/c-sto/gosecretsdump/pkg/ditreader/records.go:113 +0x3cf
github.com/c-sto/gosecretsdump/pkg/ditreader.(*DitReader).DecryptRecord(0xc420048c00, 0xc42007ab70, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
        /home/scruffy/go/src/github.com/c-sto/gosecretsdump/pkg/ditreader/records.go:76 +0x962
github.com/c-sto/gosecretsdump/pkg/ditreader.(*DitReader).Dump(0xc420048c00, 0x0, 0x0)
        /home/scruffy/go/src/github.com/c-sto/gosecretsdump/pkg/ditreader/ditreader.go:128 +0x3e0
github.com/c-sto/gosecretsdump/pkg/ditreader.(*DitReader).dump(0xc420048c00)
        /home/scruffy/go/src/github.com/c-sto/gosecretsdump/pkg/ditreader/ditreader.go:88 +0x2b
created by github.com/c-sto/gosecretsdump/pkg/ditreader.New
        /home/scruffy/go/src/github.com/c-sto/gosecretsdump/pkg/ditreader/ditreader.go:45 +0x243
C-Sto commented 4 years ago

interestingly we ran across this earlier today too! it should be resolved with https://github.com/C-Sto/gosecretsdump/commit/6178d5653e2b2f3fd78879950c4f83cc2405b04b - it will log an error but shouldn't crash

c0d3z3r0 commented 4 years ago

Hehe, nice timing. The newest version works :-)

$ gosecretsdump -ntds ntds.dit -system SYSTEM -out out.txt
gosecretsdump v0.0.1 (@C__Sto)
Writing to file  out.txt
Error:  Bad length for user properties: expecting >100 got 13 
Error:  Bad length for user properties: expecting >100 got 13