Em vez de usar o grep regex estendido ( -E ), use perl-regex grep ( -P ), com um lookbehind e lookahead.
$ grep -oP "(?<=\[)[0-9].+(?=\])" logfile
113a6d9e-7b06-42c6-a52b-7a4e4d2e216c
113a6d9e-7b06-42c6-a52b-7a4e4d2e216c
Aqui, (?<=\[) indica que deve haver um \[ precedente e (?=\]) indica que deve haver um \] a seguir, mas não para incluí-los na saída de correspondência.