elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Temas
Páginas: [1]
1  Informática / Electrónica / codigo para controlar luces desde servidor web [arduino] en: 21 Noviembre 2012, 06:36 am
Hola muchachos !!


Estuve preguntando varias cosas por el foro sobre wireless hacking y la verdad me sentia un poco mal de no aportar nada, por lo que les aporto este codigo que arme, sirve para controlar 2 (o mas, es muy facil tocarlo) luces desde un servidor web ubicado dentro de la plaqueta arduino con el shield ethernet, ademas, en el mismo sitio figura una lectura de humedad y temperatura.

Como feature adicional, le agregue que haga un handshake con los estados de los rele para que si hay mas de un cliente conectado y toca una luz, se actualize en tu vista.

Espero que a alguien le sirva !!  saludos !


/*
 Controlador de 2 luces bajo relees de negativo
 Controla 2 luces estableciendo un servidor en la plaqueta y actualizando su estado por jquery.
 Creado 28 Octubre. 2012
 por Gabriel Mellace
 
 */


#include <SPI.h>
#include <Ethernet.h>
#include "DHT.h"

#define DHTPIN 30    
#define DHTTYPE DHT11  
DHT dht(DHTPIN, DHTTYPE);

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192 ,168 ,1 ,102 };
byte gateway[] = { 192 ,168 ,1 ,1 };
byte subnet[] = { 255 ,255 ,255 ,0 };
EthernetServer server(80);
EthernetClient client;

String readString = String(30);


void setup(){
dht.begin();
Ethernet.begin(mac, ip, gateway, subnet);
delay(1000);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
digitalWrite(7, LOW);
Serial.begin(9600);
}

String checkState(int cual) {
 if(digitalRead(cual)==HIGH) {
  return "Apagado";
 }
 else {
  return "Prendido";
 }
}

String toogleState(int cual) {
  if(digitalRead(cual)==HIGH) {
  digitalWrite(cual, LOW);
  return "Prendido";
  }
  else {
  digitalWrite(cual,HIGH);
  return "Apagado";
  }
}

float getTemperature() {
  return dht.readTemperature();
}
float getHumidity() {
  return dht.readHumidity();
}


void loop(){
  
client = server.available();

if (client) {
  while (client.connected()) {
    if (client.available()) {
      char c = client.read();
        if (readString.length() < 30)
        {
          readString = readString + c;
        }
if (c == '\n') {

  
  if(readString.indexOf("/main") >= 0) {

    
    client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
  client.println("access-control-allow-origin: *");
  client.println("Cache-Control: no-cache, must-revalidate");
  client.println("Expires: Sat, 26 Jul 1997 05:00:00 GMT");

client.println();

client.print("<script src=\"http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js\"></script>");

client.print("<style>");

client.print("body {");
client.print("background-color: #000000;");

client.print("}");

client.print("#contenedor {");
client.print("width:620px;");
client.print("margin:0 auto;");
client.print("background-color:#EDEDED;");
client.print("border-radius:10px;");
client.print("box-shadow: 0px 0px 15px white;");
client.print("border:1px solid #DBDBDB;");
client.print("}");


client.print("#header {");
client.print("width:600px;");
client.print("height:20px;");
client.print("border-bottom:2px solid white;");
client.print("border-radius:10px 10px 0px 0px;");
client.print("padding:20px 10px;");
client.print("}");

client.print("#titulo {");
client.print("width:160px;");
client.print("float:left;");
client.print("}");


client.print("#temperatura {");
client.print("width:115px;");
client.print("float:right;");
client.print("}");

client.print("#cuerpo {");
client.print("border-top:2px solid #CCCCCC;");
client.print("background-color:#F2F2F2;");
client.print("min-height:600px;");
client.print("border-radius:0px 0px 10px 10px;");
client.print("}");


client.print(".boton {");
client.print("width:120px;");
client.print("height:80px;");
client.print("border:1px solid #737373;");
client.print("text-align:center;");
client.print("padding-top:20px;");
client.print("border-radius:10px;");
client.print("margin:20px;");
client.print("float:left;");
client.print("}");

client.print(".boton:hover {");
client.print("background-color: #999999;");
client.print("color:white;");
client.print("cursor:pointer;");
client.print("}");

client.print("</style>");



client.print("<script type=\"text/javascript\">");

client.print("$(document).ready(function() {");
   


client.print("$('#viga').click(function() {");   
   client.print("$.get('http://192.168.1.102/?cambiar=1' , function(data) { ");      
       client.print("document.getElementById('vigaStatus').innerHTML = data");
      client.print("});");   
client.print("});");

client.print("$('#escritorio').click(function() {");   
   client.print("$.get('http://192.168.1.102/?cambiar=2' , function(data) { ");        
       client.print("document.getElementById('escritorioStatus').innerHTML = data");
      client.print("});");   
client.print("});");


client.print("});");

client.print("function actualizarViga() {");
   client.print("$.get('http://192.168.1.102/?estado=1' , function(data) { ");
                   client.print("document.getElementById('vigaStatus').innerHTML = data");
      client.print("});");   
client.print("};");
client.print("setInterval(\"actualizarViga()\",9000);");

client.print("function actualizarEscritorio() {");
   client.print("$.get('http://192.168.1.102/?estado=2' , function(data) { ");        
                 client.print("document.getElementById('escritorioStatus').innerHTML = data");
      client.print("});");   
client.print("};");
client.print("setInterval(\"actualizarEscritorio()\",9000);");

client.print("function actualizarTemperaturaHumedad() {");
   client.print("$.get('http://192.168.1.102/?temperatura' , function(data) { ");
                  client.print("document.getElementById('temperatura').innerHTML = data");   
      client.print("});");   
client.print("};");
client.print("setInterval(\"actualizarTemperaturaHumedad()\",9000);");

client.print("</script>");

client.print("<div id=\"contenedor\">");


   client.print("<div id=\"header\">");
   
      client.print("<div id=\"titulo\">Control del cuarto</div>");
      client.print("<div id=\"temperatura\">Leyendo informacion</div>");
   
   client.print("</div>");
   
   client.print("<div id=\"cuerpo\">");
      client.print("<div id=\"viga\" class=\"boton\">");
      client.print("<span id=\"vigaTitle\" >Viga</span>");
      client.print("<br />");
      client.print("<span id=\"vigaStatus\">Encendido</span>");
      client.print("</div>");
      
      client.print("<div id=\"escritorio\" class=\"boton\">");
      client.print("<span id=\"escritorioTitle\">Escritorio</span>");
      client.print("<br />");
      client.print("<span id=\"escritorioStatus\">Encendido</span>");
      client.print("</div>");
      
   client.print("</div>");

client.print("</div>");

  }
  
if(readString.indexOf("GET /?cambiar=1") >=0)
{
  client.print(toogleState(7));
  
}
if(readString.indexOf("GET /?cambiar=2") >=0)
{
  client.print(toogleState(8));
}
if(readString.indexOf("GET /?estado=1") >=0)
{
  client.print(checkState(7));
}
if(readString.indexOf("GET /?estado=2") >=0)
{
  client.print(checkState(8));
}

if(readString.indexOf("GET /?temperatura") >=0) {
  
  client.print(getTemperature());
  client.print(" ºC ");
  client.print(getHumidity());
  client.print(" % ");
}


readString="";
client.stop();
}
}
}
}
else {
 client.stop();
}

}

/*
 Controlador de 2 luces bajo relees de negativo
 Controla 2 luces estableciendo un servidor en la plaqueta y actualizando su estado por jquery.
 Creado 28 Octubre. 2012
 por Gabriel Mellace
 
 */


dejo un videito para que lo vean :D


2  Seguridad Informática / Hacking Wireless / WPA MYSQL en: 19 Noviembre 2012, 17:41 pm
Hola a todos !!


Queria preguntarles algo que me tiene en duda desde hace unos dias y no pude encontrar en ningun lado que se haya tocado el tema de la forma que lo voy a plantear,

escuche hablar sobre tablas rainbow, etc pero luego de pensar en todo eso, se me ocurrio:
que pasaria si se hiciese una tabla mysql con dos columnas las cuales tendrian una columa con intentos de contraseña en formato estandar y la otra con el formato que devuelve los wpa handshake?

esta bien que estamos hablando de una tabla mysql con mas de 300,000,000,000 registros pero en mi opinion creo que una vez echa la tabla, la busqueda, si la tabla esta bien indexada, seria mas veloz que ponerse a sacar el handshake por fuerza bruta o diccionario (que es dificil que justo este en el diccionario),


ustedes que opinan?
3  Seguridad Informática / Hacking Wireless / Consulta sobre WPA en: 12 Noviembre 2012, 11:01 am
Hola a todos !

Soy nuevo en el foro asi que porfavor sepan disculparme si me equivoque de sección,
hoy me estuve planteando como es que funcionan las seguridades de las redes inalambricas y llegue a una teoria que me dejo inconcluso con respecto a las redes WPA.

Con las redes WEP sabemos que la verificacion se hace por paquete enviado, pero con WPA ya se esta autentificado, lo que me llevo a pensar, es posible cambiando nuestra MAC a una MAC de un cliente ya conectado, tener acceso inalambrico sin saber la contraseña? es decir, el router interpretaria que somos la otra persona que si ya esta autentificada !


Por cierto, queria agregar, si alguno sabe donde se puede conseguir algun buen diccionario en español se los agradeceria !


Muchisimas gracias a todos y al foro por el espacio !

Saludos !
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines