Kvv123 (discussão | contribs)
Sem resumo de edição
Kvv123 (discussão | contribs)
 
(24 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 6: Linha 6:


= Softwares =
= Softwares =
Alguns softwares que são usados para esta finalidade são: SNORT e WIRESHARK. Alguns dos softwares que usam a programação em segurança de redes são: Nessus Vulnerability Scanner , Nmap, Burp Suite  entre outros. Todas as linguagens praticamente podem ser usadas na área da Programação em Segurança de redes, com relativo destaque para Assembly, C/C++, Python e Perl.
Alguns softwares que são usados para esta finalidade são: '''SNORT''' e '''WIRESHARK'''. Alguns dos softwares que usam a programação em segurança de redes são: Nessus Vulnerability Scanner , Nmap, Burp Suite  entre outros. Todas as linguagens praticamente podem ser usadas na área da Programação em Segurança de redes, com relativo destaque para Assembly, C/C++, Python e Perl.


*WIRESHARK
*'''WIRESHARK'''


Wireshark (anteriormente conhecido como Ethereal) é uma ferramenta open source e multiplataforma. Ele é um analisador de rede (sniffer) completo. Ele permite que você examine os dados de uma rede em tempo real ou a partir de um arquivo de captura. Além disso, tem várias características poderosas; tais como: suporte a centenas de protocolos e tipos de mídia. Em comparação, o Wireshark assemelhasse ao tcpdump – outra ferramenta sniffer, contudo via linha de comando.
Wireshark (anteriormente conhecido como Ethereal) é uma ferramenta open source e multiplataforma. Ele é um analisador de rede (sniffer) completo. Ele permite que você examine os dados de uma rede em tempo real ou a partir de um arquivo de captura. Além disso, tem várias características poderosas; tais como: suporte a centenas de protocolos e tipos de mídia. Em comparação, o Wireshark assemelhasse ao tcpdump – outra ferramenta sniffer, contudo via linha de comando.
Linha 20: Linha 20:
[[Arquivo:asdasd.jpg]]
[[Arquivo:asdasd.jpg]]


*SNORT
*'''SNORT'''




Linha 33: Linha 33:
= Código =
= Código =
<syntaxhighlight lang="python3">
<syntaxhighlight lang="python3">
Arquivo = "lista_contatos.txt" # Nome do arquivo
declare rd0: rede {


def ler_arquivo():               # Função que le o arquivo de texto
.nome = 'Host_Suporte';
    try:                         # Tratamento de erro
.ip = '200.143.128.138';
        arq = open(Arquivo,"r+") # Abre o arquivo para leitura
.mascara = '255.255.255.255'
        print( '\n'+arq.read() ) # Quebra linha e mostra o conteudo
        arq.close()              # Fecha o arquivo
}
    except IOError:             # Tratamento de erro
declare pacote_ssh:pacoteImput{
        print('\nArquivo não encontrado!')
.nome = 'Suporte_SSH';
.origem = Host_Suporte;
.destino = Firewall;
.portaOrigem = 0-65535;
.portaDestino = 22;
.protocolo = TCP;
.interfaceOrigem = Qualquer;
.interfaceDestino = Rede_Externa;
}
declare pacote_rdp : pacoteInput {
.nome = 'Suporte_RDP";
.origem = Host_Suporte;
.destino = Firewall;
.portaOrigem = 0-65535;
.portaDestino =3389;
.protocolo = TCP;
.interfaceOrigem = Qualquer;
.interfaceDestino = Rede_Externa:  
</syntaxhighlight>


def escrever_linhas(texto):        # Função que le e escreve no arquivo
<br>
    try:                          # Tratamento de erro
        arq = open(Arquivo,"a+")  # Abre o arquivo para gravação no final do arquivo
        arq.writelines('\n'+texto) # Escreve no arquivo o parametro 'texto'
        arq.close()                # Fecha o arquivo
        print('\nLinha gravada com sucesso')
    except IOError:                # Tratamento de erro
        print('\nErro ao abrir o arquivo!') # Mostra na tela uma mensagem de erro


def pesquisar_contato(nome):
    try:
        arq = open(Arquivo, "r+")
        dicionario = {'nome':'', 'telefone':'', 'email':''}
        achei = False
        # lógica ler arquivo e comparar nome
        for cont, s in enumerate(arq.readlines()):
           
            dicionario['nome'], dicionario['telefone'],dicionario['email'] = s.split(' - ')
            if dicionario['nome'] == nome:
                print(cont)
                print('Nome: %s'% dicionario['nome'])
                print('Telefone: %s'% dicionario['telefone'])
                print('Email: %s'% dicionario['email'])
                achei = True
               
        if not achei:
            print('Não existe %s' % (nome))


       
= Diagrama de Casos de Uso =
        # se achou imprime, se não mostra uma mensagem de nao encontrado
[[Arquivo:asdsada.jpg]]
<br>
 
= Interações com as tecnologias =
[[Tecnologia Firewall]] ; é uma tecnologia que funciona como uma proteção da sua máquina ou rede, que faz a função de filtro de dados, controlando tudo que entra e sai do computador, e para isso acontecer é necessário a programação desse Firewall de acordo com as necessidade do  servidor que a utiliza.
[[Conceito de Redes de Computadores]] ;  é formada por um conjunto de máquinas trocando informações e partilhando recursos, interligados por um sub-sistema de comunicação com isso necessita de uma certa segurança, assim  usando protocolos para determinar o tempo de comunicação entre as redes.


        arq.close
= Informações adicionais =
       
Nem um código é totalmente seguro para o mundo cibernético, onde a cada segundo  um vírus diferente esta tentado entrar em sua maquina, Por exemplo: '''Sniffer''', '''Spyware''', '''Adware''', '''Port Scanner''' e '''Exploit'''.
    except IOError:
        print('\nContato não encontrado')


*'''Sniffer''' são programas que, como o próprio nome diz, “farejam”o que passa pela rede. Eles são usados freqüentemente por administradores de rede para identificarem pacotes estranhos “passeando” pela rede ou por pessoas má intencionadas para tentar descobrir informações importantes e especialmente senhas.


def excluir_contatos():
*'''Spyware''' é um programa que monitora e registra os “hábitos” de navegação e acesso à Internet do micro infectado.
    try:
        arq =open('lista_contatos.txt','r+')
        valores = arq.readlines()
        l = []
        splited =[]
        nome = input('Entre com um nome:')
        for x in valores:
            splited=x.split(' - ')
            if splited[0]==nome:
              pass
            else:
                l.append(splited)
       
        arq.close()
        novo_cadastro(l)
    except:
        print('erro')
def novo_cadastro(l):
    arq = open(Arquivo,'w')
    for x in l:
        #print("Nome:%s | Telefone:%s | Email:%s"%(x[0],x[1],x[2]))
        arq.write("%s - %s - %s" %(x[0],x[1],x[2]))
    arq.close()


while(True):
*'''Adware''' é um programa que fica fazendo anúncios de propaganda no micro infectado.
   
    print('\n        Opcões:')
    print(' ')
    print('1 - Cadastrar contato')
    print('2 - Listar dados')
    print('3 - Pesquisar contato')
    print('4 - Excluir contato')
    print('9 - Sair')
    print(' ')
    Op = int(input('Digite a opção desejada:')) # Entrada da opcao pelo teclado


    if Op == 1:                                    # Se a opcao for 1
*'''Port Scanner''' é um programa que vasculha um computador alvo à procura de portas (serviços) abertas para que, através delas, se possa perpetrar uma invasão àquele micro. Um port scanner, na verdade, envia sucessivos pacotes a várias portas diferentes, esperando receber um pacote de resposta por uma delas.
        nome = input('\nDigite o nome do contato:')      # Entrada do nome pelo teclado
        fone = input('Digite o número do telefone:')# Entrada do telefone pelo teclado
        email = input('Digite o email:')            # Entrada do telefone pelo teclado
        contato = (nome+' - '+fone+' - '+email)    # Recebe o nome + o telefone
        escrever_linhas(str(contato))              # Chama a função que grava em arquivo
    elif Op == 2:                                  # Se a opcao for 2
        ler_arquivo()                               # Chama a função que le o arquivo
    elif Op == 9:                                  # Se a opcao for 0
        break                                      # Quebra o laço infinito
    elif Op == 3:
        nome = input("Digite o nome: ")
        pesquisar_contato(nome)
    elif Op == 4:
        #nome = input ("Digite o nome: ")
        excluir_contatos()
</syntaxhighlight>
Dar um exemplo de um código-fonte que mostre alguma parte da aplicação final. O código deverá ser curto mas que o leitor consiga enxergar para que serve. Pode-se usar comentários no programa.
<br>


= Diagrama de Casos de Uso =
*'''Exploit''' é um programa construído para tirar vantagem de alguma falha, ou vulnerabilidade, conhecida em um sistema de informações. Um Exploit é construído por um hacker (ou cracker) para permitir que usuários menos “conhecedores” possam invadir ou prejudicar o funcionamento de computadores.  
Desenhar ou plotar  os requisitos funcionais de uma aplicação.
<br>


= Interações com as tecnologias =
Por isso, devemos sempre estar melhorando nossos códigos para evitar essas infestações.
Incluir links (internos ou externos) temas que tem relação com este, explicando detalhes sobre. Limite de 3 internos e 2 externos.
<br>


= Informações adicionais =
Descrever detalhes a mais sobre esse tema.
<br>
<br>


= Referências bibliográficas =
= Referências bibliográficas =
  Relacionar aqui as referências bibliográficas no padrão ABNT.  
''' Network Security concept. In:WIKIPÉDIA, a enciclopédia livre. '''. Disponível em: < https://en.wikipedia.org/w/index.php?title=Network_security&oldid=803794232 >. Acesso em: 27 set. 2017.
  Bases de procura: Artigos, publicações acadêmicas, revistas e sites de fornecedores
 
''' WIRESHARK , SNORT . In: Linux Descomplicado. '''. Disponível em: < https://www.linuxdescomplicado.com.br/2015/06/11-ferramentas-de-seguranca-de-redes-para-linux.html>. Acesso em: 27 set. 2017.
 
'''  WIRESHARK  . In: books.google.com.br . '''. Disponível em: < https://books.google.com.br/books?id=cSAuDwAAQBAJ&pg=PT303&lpg=PT303&dq=WIRESHARK+qual+linguagem+usada+para+sua+programa%C3%A7%C3%A3o&source=bl&ots=9LVGZJndLE&sig=6ZYYBSLAsRUVHurR1UU4v412YWk&hl=pt-BR&sa=X&ved=0ahUKEwig047ly8PWAhVKFZAKHWTOApkQ6AEINzAD#v=onepage&q=WIRESHARK%20qual%20linguagem%20usada%20para%20sua%20programa%C3%A7%C3%A3o&f=false>. Acesso em: 27 set. 2017.
 
'''  WIRESHARK . In: Wireshark. '''. Disponível em: <https://www.wireshark.org/>. Acesso em: 28 set. 2017.
 
'''  RSB Firewall Language . In: projetos.inf.ufsc.br. '''. Disponível em: <https://projetos.inf.ufsc.br/arquivos_projetos/projeto_456/Artigo%20RSBFL.pdf/>. Acesso em: 29 set. 2017.
 
'''  Vírus . In: pt.wikiversity.org. '''. Disponível em: <https://pt.wikiversity.org/wiki/Seguran%C3%A7a_em_Redes_de_Dados/Seguran%C3%A7a_da_Informa%C3%A7%C3%A3o>. Acesso em: 05 set. 2017.
<br>
<br>

Edição atual tal como às 21h40min de 5 de outubro de 2017

Conceito

A programação em segurança de rede começa quando o usuário tem que efetuar uma autenticação, habitualmente com um nome de usuário e uma senha. Uma vez que isso seja efetuado, é necessário apenas um detalhe autenticando o nome do usuário ,ou seja, a senha. Isso é usualmente chamado de autenticação de um fator. Com a autenticação de dois fatores, algo que o usuário possui também é usado (por exemplo, um token de segurança ou dongle, um cartão de caixa eletrônico ou um telefone celular); e com autenticação de três fatores, algo que o usuário é também é usado (por exemplo, uma impressão digital ou uma varredura retiniana).

Uma vez autenticado, um firewall impõe políticas de acesso, como os serviços a que os usuários da rede podem acessar. Embora eficaz para impedir o acesso não autorizado, esse componente pode não verificar o conteúdo potencialmente nocivo, como worms de computador ou troianos que estão sendo transmitidos pela rede. O software anti-vírus ou um sistema de prevenção de intrusão (IPS) ajudam a detectar e inibir a ação de tal malware.

Softwares

Alguns softwares que são usados para esta finalidade são: SNORT e WIRESHARK. Alguns dos softwares que usam a programação em segurança de redes são: Nessus Vulnerability Scanner , Nmap, Burp Suite entre outros. Todas as linguagens praticamente podem ser usadas na área da Programação em Segurança de redes, com relativo destaque para Assembly, C/C++, Python e Perl.

  • WIRESHARK

Wireshark (anteriormente conhecido como Ethereal) é uma ferramenta open source e multiplataforma. Ele é um analisador de rede (sniffer) completo. Ele permite que você examine os dados de uma rede em tempo real ou a partir de um arquivo de captura. Além disso, tem várias características poderosas; tais como: suporte a centenas de protocolos e tipos de mídia. Em comparação, o Wireshark assemelhasse ao tcpdump – outra ferramenta sniffer, contudo via linha de comando.

Banco de dados: Sniffing no localhost: Sniffing é a prática que, utilizando uma ferramenta genericamente chamada sniffer, intercepta e registra tráfego de dados e é capaz de decodificar o conteúdo trocado entre computadores de uma rede. O localhost muitas vezes é usado também por serviços que não precisam ser expostos a uma rede maior. Um ótimo exemplo é um servidor de banco de dados executando na mesma máquina que a aplicação web que se conecta com esse banco de dados. Como o banco de dados é possivelmente acessível de fora da máquina da aplicação web, ele representa um risco à segurança. Em situações como essa, basta vincular o banco de dados ao localhost de modo que o servidor web local possa continuar se comunicando com ele, mas o banco de dados seja inacessível aos processos que estejam fora da máquina local.


  • SNORT



É um sistema de detecção e prevenção de intrusão (IDS) de rede é um dos mais completos para análise de tráfego e registro de pacotes em redes IP. O Snort utiliza uma linguagem baseada em regras (rules) flexíveis para descrever o tráfego que deve analisar ou passar, e um motor de detecção modular. Além do mais, existe uma ferramenta livre com interface web para análise dos alertas de Snort – Basic Analysis and Security Engine (BASE). Por fim, o Snort é gratuito e open-source. Contudo, boa parte das rules para Snort são pagas; limitando os recursos da versão free, já que as rules são o combustível principal do Snort.


Código

<syntaxhighlight lang="python3"> declare rd0: rede {

.nome = 'Host_Suporte'; .ip = '200.143.128.138'; .mascara = '255.255.255.255'

} declare pacote_ssh:pacoteImput{ .nome = 'Suporte_SSH'; .origem = Host_Suporte; .destino = Firewall; .portaOrigem = 0-65535; .portaDestino = 22; .protocolo = TCP; .interfaceOrigem = Qualquer; .interfaceDestino = Rede_Externa; }

declare pacote_rdp : pacoteInput { .nome = 'Suporte_RDP"; .origem = Host_Suporte; .destino = Firewall; .portaOrigem = 0-65535; .portaDestino =3389; .protocolo = TCP; .interfaceOrigem = Qualquer; .interfaceDestino = Rede_Externa: </syntaxhighlight>



Diagrama de Casos de Uso


Interações com as tecnologias

Tecnologia Firewall ; é uma tecnologia que funciona como uma proteção da sua máquina ou rede, que faz a função de filtro de dados, controlando tudo que entra e sai do computador, e para isso acontecer é necessário a programação desse Firewall de acordo com as necessidade do servidor que a utiliza. Conceito de Redes de Computadores ; é formada por um conjunto de máquinas trocando informações e partilhando recursos, interligados por um sub-sistema de comunicação com isso necessita de uma certa segurança, assim usando protocolos para determinar o tempo de comunicação entre as redes.

Informações adicionais

Nem um código é totalmente seguro para o mundo cibernético, onde a cada segundo um vírus diferente esta tentado entrar em sua maquina, Por exemplo: Sniffer, Spyware, Adware, Port Scanner e Exploit.

  • Sniffer são programas que, como o próprio nome diz, “farejam”o que passa pela rede. Eles são usados freqüentemente por administradores de rede para identificarem pacotes estranhos “passeando” pela rede ou por pessoas má intencionadas para tentar descobrir informações importantes e especialmente senhas.
  • Spyware é um programa que monitora e registra os “hábitos” de navegação e acesso à Internet do micro infectado.
  • Adware é um programa que fica fazendo anúncios de propaganda no micro infectado.
  • Port Scanner é um programa que vasculha um computador alvo à procura de portas (serviços) abertas para que, através delas, se possa perpetrar uma invasão àquele micro. Um port scanner, na verdade, envia sucessivos pacotes a várias portas diferentes, esperando receber um pacote de resposta por uma delas.
  • Exploit é um programa construído para tirar vantagem de alguma falha, ou vulnerabilidade, conhecida em um sistema de informações. Um Exploit é construído por um hacker (ou cracker) para permitir que usuários menos “conhecedores” possam invadir ou prejudicar o funcionamento de computadores.

Por isso, devemos sempre estar melhorando nossos códigos para evitar essas infestações.


Referências bibliográficas

Network Security concept. In:WIKIPÉDIA, a enciclopédia livre. . Disponível em: < https://en.wikipedia.org/w/index.php?title=Network_security&oldid=803794232 >. Acesso em: 27 set. 2017.

WIRESHARK , SNORT . In: Linux Descomplicado. . Disponível em: < https://www.linuxdescomplicado.com.br/2015/06/11-ferramentas-de-seguranca-de-redes-para-linux.html>. Acesso em: 27 set. 2017.

WIRESHARK . In: books.google.com.br . . Disponível em: < https://books.google.com.br/books?id=cSAuDwAAQBAJ&pg=PT303&lpg=PT303&dq=WIRESHARK+qual+linguagem+usada+para+sua+programa%C3%A7%C3%A3o&source=bl&ots=9LVGZJndLE&sig=6ZYYBSLAsRUVHurR1UU4v412YWk&hl=pt-BR&sa=X&ved=0ahUKEwig047ly8PWAhVKFZAKHWTOApkQ6AEINzAD#v=onepage&q=WIRESHARK%20qual%20linguagem%20usada%20para%20sua%20programa%C3%A7%C3%A3o&f=false>. Acesso em: 27 set. 2017.

WIRESHARK . In: Wireshark. . Disponível em: <https://www.wireshark.org/>. Acesso em: 28 set. 2017.

RSB Firewall Language . In: projetos.inf.ufsc.br. . Disponível em: <https://projetos.inf.ufsc.br/arquivos_projetos/projeto_456/Artigo%20RSBFL.pdf/>. Acesso em: 29 set. 2017.

Vírus . In: pt.wikiversity.org. . Disponível em: <https://pt.wikiversity.org/wiki/Seguran%C3%A7a_em_Redes_de_Dados/Seguran%C3%A7a_da_Informa%C3%A7%C3%A3o>. Acesso em: 05 set. 2017.