Eine Möglichkeit wäre noch, das WP-Anmelde-Cookie abzufragen:
Apache Configuration
# Bilder nur für angemeldete Benutzer
RewriteCond %{HTTP_COOKIE} !wordpress_49745e19158d762ac2bed4e6c80d45d0
RewriteRule ^wp-content/uploads/ - [F,L]
Zumindest hätten dann nur Nutzer Zugriff, bei denen das Cookie existiert, die also schon mal angemeldet waren oder noch sind.
Oder jemand rekonstruiert den Namen und setzt sich so ein Dummy-Cookie, was natürlich möglich ist. Als Gegenmaßnahme könnte man aber einen eigenen Cookie-Namen in der wp-config.php definieren.
Im Großen und Ganzen sollte es aber den normalen Nutzer fernhalten.
Das da oben ist nur ein Beispiel, den Cookienamen und das zu schützende Verzeichnis muß man natürlich noch entsprechend anpassen :-)
Gruß
Ingo