.htaccess - это просто средство указания директив конфигурации Apache для каждого каталога. Они допускают множество различных видов защиты паролем.
Если вы говорите о базовой аутентификации HTTP, то имя пользователя и пароль отправляются в виде открытого текста при каждом запросе и подвергаются сниффингу (при условии, что вы не используете SSL).
Кроме того, они подвержены обычным проблемам, от которых страдает любая система на основе паролей.
Использование базовой аутентификации HTTP не дает пользователям никакой дополнительной возможности загружать и выполнять файлы. Если они уже могут это сделать, то они все еще могут это сделать. Если они не могли, они не могли.