Programacao de sockets em c p/ linux

Disponível somente no TrabalhosFeitos
  • Páginas : 28 (6875 palavras )
  • Download(s) : 0
  • Publicado : 30 de agosto de 2012
Ler documento completo
Amostra do texto
PROGRAMACAO DE SOCKETS EM C P/ LINUX

Esse tutorial n�o tem o intuito de ir fundo nessa magn�fica
ferramenta de programa��o, longe disso, o intuito � somente introduzir o
iniciante nesse maravilhoso mundo e mostrar um pouco do que se pode fazer
com isso. Tentaremos abordar de forma simples e clara os meios de se criar
um socket. Os exemplos aqu� mostrados bem como a forma deprograma��o s�o
voltados para a plataforma linux...diga-se linux slackware.. de modo que pode
n�o servir em outras plataformas.
Faz-se necess�rio um conhecimento basico de C e Redes em geral..um
TCP/IP caia bem.


AVISO: NAO NOS RESPONSABILIZAMOS PELO MAU USO DO MATERIAL CONTIDO NESSE
TEXTO, BEM COMO DOS EXEMPLOS AKIH DESCRITOS. ESSE TEXTO FOI CRIADO
SOMENTE COM PROPOSITOSEDUCACIONAIS.POR ISSO LEMBRE-SE, NADA DE
BOBAGENS!!!


------------------------------ TOPICOS -----------------------------------

+ FASE I :
----------
* SOCKETS - O que sao e para que servem;
* TIPOS DE SOCKETS;
* HEADERS;
* DECLARANDO UM SOCKET;
* DEFININDO UMA ESTRUTURA;
* CONSTRUINDO UM SOCKET;
* A fun��o CONNECT();
* ALGUMAS BOBAGENS;
* PRIMEIRO EXEMPLO PRATICO:portscan.

+ FASE II :
-----------
* A fun��o BIND();
* A fun��o LISTEN();
* A fun��o ACCEPT();
* SEGUNDO EXEMPLO PRATICO: backdoor.

+ FASE III :
------------
* AS FUN��es SEND() E RECV();
Simples Exemplos:Servidor TCP, Cliente TCP e um Denial of Service.
* AS FUN��es WRITE() E READ();
Simples Exemplo: Esqueleto para envir dados com write().
* TERCEIRO EXEMPLO PRATICO: brutal force.+ FASE IV :
-----------
* CONSIDERA��es FINAIS;
* ALGUNS LINKS SOBRE PROGRAMACAO DE SOCKETS;

--------------------------------------------------------------------------



--------------------------- FASE I - O PARTO -----------------------------

---------------------------------------
*** SOCKETS - O QUE SAO E P/ Q SERVEM! |
---------------------------------------

Nao vou meaprofundar descrevendo a origem e a necessidade do surgimento
dos sockets..vamos agir de forma pratica,mas teoria sempre � bom, peskise
se tiver tempo, pois esse assunto � fascinante.
Os sockets sao os programas responsaveis pela comunica��o ou interliga��o
de outros programas na internet, por exemplo.Quando voc� se conecta a um
servico qualquer tipo(telnet) voc� est� usando um socket, no casochama-se
a rotina socket() como cliente do teu lado..e do lado do host com servico
uma rotina de socket servidor.Acredito se chegou at� ak� � pq j� sabe
disso tudo, e quer ir mais alem. De forma pratica, quando voc� executa
um exploit remoto,vc usa um socket, quando vc cria um trojan remoto, usa-se
um socket, quando vc captura pacotes externamente vc usa um socket, etc....----------------------
*** TIPOS DE SOCKETS! |
----------------------

Existe alguns tipos de sockets,mas por enquanto vamos nos ater apenas a 2,
os dois mais simples..de modo que se vc kiser ir mais alem e escrever
programas que se utilizem de RAW SOCKETS, paciencia irmao, ainda n�o �
dessa vez que escreveremos para vc. Os tipos de sockets que iremos trabalhar
sao os "Stream Sockets" e os "DatagramSockets", eles tamb�m sao conhecidos
como "SOCK_STREAM" e "SOCK_DGRAM", respectivamente.
+ Stream Sockets usam TCP, sao usados em diversar aplica��es como telnet,www,
etc.Os pacotes aqui sao sequenciais, seguem em 2 vias,voc� pode ler e gravar.
+ Datagrams Sockets usam UDP.Os pacotes aqui n�o sao sequenciais,opera em
1 via,voc� s� pode ler ou gravar,nunca as 2 coisas.

A utilidade pratica decada um deles voc� ver� logo em breve.Outros
tipos conhecidos de sockets sao: SOCK_SEQPACKET e SOCK_RDM, veremos mais
sobre esses da� num futuro txt.

-------------
*** HEADERS |
-------------

Existem alguns headers usados em conjunto para facilitar ao maximo a programa��o
de sockets..Eis alguns ak�:

#include
#include
#include
#include

Lembre-se:"Dependendo da situa��o voc�...
tracking img