Ver Mensaje Individual
  #4 (permalink)  
Antiguo 09/06/2012, 18:16
MacintoshD
 
Fecha de Ingreso: mayo-2012
Ubicación: Mexico
Mensajes: 82
Antigüedad: 12 años
Puntos: 7
Respuesta: session_start(); como bloquear robo de sessiones

Cita:
Iniciado por Nemutagk Ver Mensaje
mmm, no es posible robar sesiones como tal, para esto tendría que tener acceso directo al hosting, ahora, tu "sistema de seguridad" es relativo, con curl hago una petición a index.php y así obtengo la cookie con el SSID de la sesión, posteriormente puedo acceder directamente a send.php y el sistema crerá que soy un usuario común, por lo tanto, de seguridad no tiene mucho, lo que podrías hacer es colocar un sistema "captcha" para verificar que el usuario al menos tenga que leer una imagen o responder una pregunta lógica, lo que aleja sistemas de bots "caseros" o "sencillos"
Gracias por responder, he tratado de realizar acciones para evitar el robo por cookies, funcino por unas horas, pero ahora ha vuelto a tomar este usuario acceso como un usuario normal:

Código PHP:
 ini_set("session.use_cookies"0);
 
ini_set("session.use_trans_sid"1); 

Este es el archivo completo, lo que hace es recivir desde un formulario, un numero de telefono, pais y mensaje, para procesarlo y enviarlo por medio de una API que acutalmente compre, un pequeño paquete de SMS gratis.
Código PHP:
<?php
    ini_set
("session.use_cookies"0);
    
ini_set("session.use_trans_sid"1);
   
session_start();
//Retrieve the value of the hidden field
$form_secret = isset($_POST["form_secret"])?$_POST["form_secret"]:'';

if(isset(
$_SESSION["FORM_SECRET"])) {
    if(
strcasecmp($form_secret$_SESSION["FORM_SECRET"]) === 0) {
       
//---------- Login Information --------
$username "usuario";
$pass "contraseña";
//---------------------------------------

//-------------- Sms sending information ----------
$no $_POST['no']; // Phone number without country code.
$msg stripslashes($_POST['msg']); // Message body

$len=strlen($msg);

if(
$len>160){
//$result="<num>3</num><txt>".$lang_en['status_len_exc']."</txt>";
//ending($result);
    
$cSMS $len/160;
    
$cSMS number_format($cSMS,1);
    
$cSMS substr($cSMS,0,1);
}else{
    
$cSMS=1;
}
//-------------------------------------------------



$postdata "p_num_text=$no&smstemplate=&message=$msg&txtcount=$len char : $cSMS Sms&hiddcount=153";

if((
$no!="") && ($msg!="")){
$ch curl_init();

//------------- Login ------------------

curl_setopt($chCURLOPT_URL"http://url.dyndns.org/index.php");
curl_setopt($chCURLOPT_REFERER"http://url.dyndns.org/index.php");
curl_setopt ($chCURLOPT_POST1);
curl_setopt($chCURLOPT_USERAGENT"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13");
curl_setopt ($chCURLOPT_POSTFIELDS"app=page&inc=login&op=auth_login&username=$username&password=$pass");
curl_setopt ($chCURLOPT_COOKIEJAR"9876578jhsdb.txt");
curl_setopt ($chCURLOPT_RETURNTRANSFER1);
$login curl_exec ($ch);
//-------------------------------------------

//----------------- Send SMS -------------------
curl_setopt($chCURLOPT_URL"http://url.dyndns.org/index.php?app=menu&inc=send_sms&op=sendsmstopv_yes");
curl_setopt($chCURLOPT_REFERER"http://url.dyndns.org/index.php?app=menu&inc=send_sms&op=sendsmstopv");
curl_setopt ($chCURLOPT_POST1);
curl_setopt($chCURLOPT_USERAGENT"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13");
curl_setopt ($chCURLOPT_POSTFIELDS$postdata);
//curl_setopt($ch, CURLOPT_COOKIEFILE, '9876578jhsdb.txt');
curl_setopt ($chCURLOPT_RETURNTRANSFER1);
$send curl_exec ($ch);

$search strpos($send"Your SMS has been delivered to queue");

if(
$search===false){
$errSuc "Mensaje: $msg <br> To: $no <br> Tu mensaje ha sido enviado - menwes.com";
}else{
$errSuc "Message: $msg <br> To: $no <br> Sent Successfully.";

//----------------------------------------------
}
curl_close ($ch);
}
        unset(
$_SESSION["FORM_SECRET"]);
    }else {
        
//Invalid secret key
    
}
} else {
    
//Secret key missing
    
echo "<center><b><font color='#FF0000'>Your Message has already been processed!</font></b></center> ";
}
?>
Que opinan!!

Gracias y Saludos.