Support

Admin Tools

#37954 Username Harvesting via the New REST API in WP 4.7

Posted in ‘Admin Tools for Joomla! 4 & 5’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

Joomla! version
n/a
PHP version
n/a
Admin Tools version
n/a

Latest post by nicholas on Friday, 28 October 2022 03:01 CDT

lemtrac

Greetings Team 

 

I was notified by miscast that that I have issue on site showing my username and website details 

Wordfence Blocks Username Harvesting via the New REST API in WP 4.7

https://www.wordfence.com/blog/2016/12/wordfence-blocks-username-harvesting-via-new-rest-api-wp-4-7/

So how do I prevent this on Akeeba admin for Wordpress and Joomla site please 

 kevin

nicholas
Akeeba Staff
Manager

Joomla is not WordPress. The REST API in Joomla is not publicly accessible. It requires authentication with a Super User account. Source: I wrote the authentication plugin for the Joomla 4 API application.

For WordPress, we do not include a feature to block the JSON API for two reasons. First, it may be relied on by legitimate software. Second, usernames are public. If your site's security relies on the username being private then the site is insecure by design.

Usernames are included by WordPress in all RSS feeds. The URLs to RSS feeds are easy to determine, even if they are not published for a post or page. Moreover, usernames —being public— are included in the SEO information added by Yoast on every page and post. So what if the REST API lists usernames? So does every page of your site! It's like installing a gate on a path leading to a field but no fence around it. Oh no, how am I going to go past the gate? Right, I will walk around it as there's no fence. /facepalm

WordFence's post did not come from their own research either. It was based on a blog post by an Italian core WordPress contributor who has been discontent with the way WP 5.0 forced Gutenberg on everyone and joined the ClassicPress development team. At around the same time he wrote a blog post about how the WordPress JSON API is "insecure" for allowing enumeration of usernames… which are public and not meant to be secret anyway! We read that blog post too, we had a discussion and we decided that blocking an API request for public information just for sensationalism's sake is not a responsible attitude. Therefore we never included such a pointless feature in our software.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!