I think the first problem is $2 in your awk script, because with $2 is the second column (DE, GH, BF, ...), not the third one where the numbers you want to compare are.
Then, there should be a condition and what you want to do if the condition is met.
awk -F'_' '($3>23153 && $3<23167){print}' *.txt >> output.txt
There is a condition in () and action in {}.
EDIT:
As I've been reminded in the comments, {print} action is the default one, so you can further simplify the awk script to:
awk -F'_' '($3>23153 && $3<23167)' *.txt >> output.txt