echo is not a very good UNIX citizen. If it were well-behaved you'd be able to write echo -- "$STR", with -- indicating the end of the options list. But it's not, so you can't.
echo
echo -- "$STR"
--
Your best bet is to use printf instead.
printf
printf '%s\n' "$STR"