Passo 1.
Etapa 2
Passo 1.
Criptografia o uso de sistemas ou componentes que so considerados
altamente resistentes criptoanlise. O estudo de mtodos para decifrar cdigos
ou criptografia o armazenamentos de dados confidenciais em banco de dados,
ou arquivos.
Os diversos mtodos de criptografia so utilizado algoritmos bem testados,
funes base"64"e (MCRYPT) que trabalham com parceria, permitindo a
criptografia e a descriptografia de dados. Chaves pblicas, chaves secretas.
Chave pblica a tcnica que consiste em dois pontos de comunicao que
permite criptografados publicando suas chaves pblicas.
Chaves nica, utilizada para criptografar e descriptografar, embora mais veloz.
Passo 2.
SHA1- Outra maneira que pode se usar em criptografia php o sha1, parecido
com o md5, a diferena que ele tem 160 bits, tem uma string maior de 40
caracteres alfanumricos. Ele gera uma cadeia bem maior de caracteres,
causando um encontro de duas strings que, codificadas so a mesma coisa.
Modo de usar o sha1 no php.
$string = 'Modo de usar o sha1 no php';
$codificada = sha1($string);
Echo "Resultado da codificao usando sha1: " . $codificada;
// dcef6a0bb35e30d1b67f77d3ee7d176a37c97424
MD5: Metodo mais comum um algoritmo de um hash de 128 bits. Que consiste
string alfanumrica de 32 caracteres. Que preciso guardar um dado importante
que ningum possa ter acesso usa-se o md5, mais seguro e ningum tem
acesso. O problema do md5 , que se possvel houver um descuido pode se
gerar dois md5 iguais, ou duas strings diferentes que acabem como o mesmo
md5. raro mas pode acontecer se tiver algum descuido.
Modo de usar o md5 no php.
$string = ' Mtodos de criptografia em php';
$codificada = md5($string);
echo "Resultado da codificao usando md5: " . $codificada;
// a6f964b1c15648a4488f1dacdbb6e2a8
Passo 3.
ns.printStackTrace ();
String s = "senha aqui";
MessageDigest md = MessageDigest.getInstance("SHA-1");
md.update( s.getBytes() );
byte[] hash = md.digest();
StringBuffer hexString = new StringBuffer();
for (int i = 0; i < hash.length; i++) {
if ((0xff & hash[i]) < 0x10)
hexString.append( "0" + Integer.toHexString((0xFF & hash[i])));
hexString.append(Integer.toHexString(0xFF & hash[i]));
String criptografado = hexString.toString();
Mtodo de criptografia em ASP.NET
public string GerarMD5(string valor)
// criptografia MD5
MD5 md5Hasher = MD5.Create();
// Criptografa o valor passado
byte[] valorCriptografado =
d5Hasher.ComputeHash(Encoding.Default.GetBytes(valor));
// Cria um StringBuilder para passarmos os bytes gerados para ele
StringBuilder strBuilder = new StringBuilder();
// Converte cada byte em um valor hexadecimal e adiciona ao
// and format each one as a hexadecimal string.
for (int i = 0; i < valorCriptografado.Length; i++)
strBuilder.Append(valorCriptografado[i].ToString("x2"));
// retorna o valor criptografado como string
return strBuilder.ToString();
using System.Security.Cryptography;
public class Criptografia
private static byte[] chave = { };
private static byte[] iv = { 12, 34, 56, 78, 90, 102, 114, 126 };
public Criptografia()
public static string Criptografar(string valor, string chaveCriptografia)
DESCryptoServiceProvider des;
MemoryStream ms;
CryptoStream cs; byte[] input;
des = new DESCryptoServiceProvider();
ms = new MemoryStream();
input =
Encoding.UTF8.GetBytes(valor);chave=Encoding.UTF8.GetBytes(chaveCriptografi
a.Substring(0, 8));
cs = new CryptoStream(ms, des.CreateEncryptor(chave,
iv), CryptoStreamMode.Write);
cs.Write(input, 0, input.Length);
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
catch (Exception ex)
private static string GetSHA1(string strPlain)
UnicodeEncoding UE = new UnicodeEncoding();
byte[] HashValue, MessageBytes = UE.GetBytes(strPlain);
SHA1Managed SHhash = new SHA1Managed();
string strHex = "";
HashValue = SHhash.ComputeHash(MessageBytes);
Etapa 3.
Passo 1.
Passo 2.
SQL INJECTION: Visa injetar contedo inesperado em comandos SQL do banco
de dados.
Uma aplicao com um formulrio que recebe um nome de usurio, e depois
Exemplo: 1
Neste Exemplo apagaria toda a tabela.
dummytext ; Drop table jos_users; SELECT * FROM jos_poll where title =
Exemplo:2
Neste exemplo temos uma situao comum de validao de dados.
Desta forma um usurio comum iria digitar seu nome em quanto em um formulrio
HTML podem aceitar campo para um nome.
O cdigo gerador a partir desta injeo ficaria algo assim.
Select * From jos_users Where name = dummytext OR a = a ;
Exemplo 3
Um Hacker geraria algo assim.
dumytext OR a = a
Passo 3.
Tem vrias maneiras de evitar o ataque em SQL INJECTION, a maneira mais
simples a correo do cdigo vulnerveis, que evita falhas de redirecionamento
um ponto chave na sua gesto de riscos de quaisquer aplicao web.
Os alvos mais prediletos dos fraudadores so os ataques de engenharia social.
Quais as recomendaes para diminuir os riscos e despistar eles.
Evitar o uso de redirecionamento e se for possvel fazer por meio de variveis de
sesso e utilizar o HTTP, e nunca informe a URL real o parmetro, opte por um
valor que ser traduzido do servidor para URL alvo.
Bibliografia
https://msdn.microsoft.com/pt-br/library/ms995349.aspx
http://www.devmedia.com.br/criptografia-commd5-no-dotnet-parte1/17063#ixzz2f0plzwtN
http://www.linhadecodigo.com.br/artigo/511/encriptando-senhascomaspnet.aspx#ixzz2epQrSPkn
http://pt.wingwit.com/Networking/network-security/75766.html#.VRsZ1PnF_BU
http://www.devmedia.com.br/sql-injection-em-ambientes-web/9733
http://moodle.progdan.com/mod/book/view.php?id=5238&chapterid=348
Introduo
Concluso
Foram concludas todas as etapas neste atps com a finalidade de ajudar e obter o
maior conhecimento no mundo da segurana de software seguro. E tambm com
se prevenir de ataques cibernticos etc.