I am using OJS 3.1.2.4, and my journal was hacked. The number of users increased unexpectedly, and several new roles appeared in Users & Roles → Roles that were never created before.
I tried to delete these suspicious roles through the OJS interface, but the deletion always failed
I need to know in which database tables the Roles list is stored so I can remove these hacked roles safely from the database.
I expected the system to allow me to delete the unwanted roles normally
I would strongly suggest upgrading your OJS before doing anything else. OJS 3.1.2-4 is years out of date and no longer maintained for security; even if you do manage to clean up the malicious accounts, it’s likely that they’ll just attack your installation again.
Regards,
Alec Smecher
Public Knowledge Project Team
Do you have any official guide for upgrading OJS from version 3.1.2-4 to the latest version? Most tutorials I found online look very manual and require advanced technical skills.
Also, is there any recommended service or organization that can safely handle an OJS upgrade, especially for an installation that has already been hacked?
As an intermediate step before upgrading, you can just replace the OJS code (if it hasn’t been customized by you or your colleagues) with the “pristine” OJS of the same version. You need to replace everything but config.inc.php (which it would be good to check for unwanted changes), .htaccess and the public folder.