Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - WHK

#2471
Hacking / Re: Abrir cmd(símbolo del sistema)?
10 Noviembre 2011, 19:06 PM
lol, y esto va en hacking avanzado?

hay miles de programas que desbloquean el deep freeze y las restricciones de la pc pero todo depende si tienes permisos de administración o no.

Intenta pasarte a admin con esto:
http://www.taringa.net/posts/ciencia-educacion/12635386/UAC-Bypass_-ser-administrador-desde-cuenta-restringida-Win7.html


Luego desfrizas con esto:
http://www.4shared.com/file/mSZQT7a5/UnDeepFreeze-AntiDeepFreeze.htm


Luego elimina las restricciones con el RRT:
http://www.sergiwa.com/modules/mydownloads/visit.php?cid=2&lid=1


Saludos.
#2472
Cita de: Slow V.S. en 10 Noviembre 2011, 14:34 PM
maldita seas, ¿donde esta microsoft?  :huh:

saludos... :-\

Se está quedando sin el dinero robado de android tratando de levantar bing
#2473
Dale un vistazo a sto:
http://foro.elhacker.net/nivel_web/iquestcomo_iniciarse_en_la_seguridad_web-t279791.0.html

Normalmente este tipo de temas deberias preguntarlas en la sección de fallas de seguridad a nivel web que se encuentra ahi mismo.

Saludos.
#2474
Desarrollo Web / Re: Que editor de código utilizas?
10 Noviembre 2011, 17:40 PM
Me gustó mucho la previsualización del costado con el largo semi completo del código
#2475
Tienes razón blackzerox, no tomé en cuenta as sumas y operadores para los atributos de los archivos y por eso tomaba los valores como si fuera una unica constante cuando no era así, algo similar al intentar hacer un msgbox con valores numericos en ves de sumar constantes para poder crear la caja con los botones y el icono.

De todas formas ¿la pregunta inicial quedó mas que clara no?
#2476
Cita de: Sk9ITk5Z en  9 Noviembre 2011, 01:38 AM
lo dijo jesus a pedro y se supone que el sucesor de pedro es el papa...

Espero que no sea cuando donde dijo "sobre esta piedra edificare mi iglesia" porque está exegeticamente mal interpretada debido a que cuando Jesus llama pedro a cefas quiere decir petros que tiene un significado que es piedra pero cuando dice roca se refiere a el mismo que sobre si mismo edificaria su iglesia ya que no estamos viviendo el evangelio de pedro sino el de Jesus y la roca es Jesus y el edificio que no esta sobre la arena es la roca que es Jesus, por lo tanto si tu vas a cualquier instituto biblico verás que es así. Por lo tanto Jesus nunca jamas delegó a una sola persona como representante ni sucesor, lo que hizo roma fue reemplazar los cesares por papas pero eso es otro tema que no tiene nada que ver con el cristianismo ya que siempre los apostoles fueron 12 no uno.

Además no puedes formar una doctrina basada en un solo versiculo biblico y menos sin fundamentos, es lo que hacen las sectas como los tj o mormones...
Y a las demás congregaciones llaman sectas.... en fin.
#2477
Desarrollo Web / Re: Pop up con javascript
9 Noviembre 2011, 01:40 AM
Te sirven?

Código (html4strict) [Seleccionar]
<SCRIPT>window.open("about:blank")</SCRIPT>
<SCRIPT>window.alert("popup")</SCRIPT>


http://www.w3schools.com/jsref/met_win_open.asp
#2478
Hola, tu código es php y esto deberia ir en el subforo de php porque acá no todos te van a descifrar que lenguaje estás usando porque no todos conocen de sintaxis php.

Código (php) [Seleccionar]
<?php
echo 'Total: '.(int)suma(array(1,4,9,5,2,6,98,23,-40,3,76,9,-8,3,1,4,7,0));

function 
suma($vec){
if((!isset($vec)) or (!is_array($vec)))
return 0;
$ex = array();
foreach($vec as $sum){
if(((int)$sum%2) == 0)
$ex[] = (int)$sum;
}
if(count($ex) > 0){
$ret 0;
foreach($ex as $do){
$ret += (int)$do;
}
return (int)$ret;
}else
return 0;
}

?>


Recuerda que un buén código no es el que hace el trabajo sino el que mejor controla cáda situación porque que tal si a la función tuya le paso un valor que no es un array? de seguro que me va a dar una exepción nativa de php y tendrás una falla de seguridad llamada path disclosure, y si no retorna un valor numérico?, etc.
#2479
PHP / Re: Heredar varios objetos + PHP
9 Noviembre 2011, 00:52 AM
Yo lo hago así:

class main{
var $need;
function __construct(){
 $this->need = array('class1','class2');
}

}

...

function load_lib($lib){
$this->$lib = new $lib();
foreach($this->$lib->need as $need){
 $this->$lib->$need = new $need();
}
}


Se que no es lo mas adecuado ni lo mas correcto pero yo suelo utilizar funciones que recursivamente agregan las librerias que requiero desde un array dentro del constructor, es parte de mi framework y se cargan inmediatamente cuando las llamo y quedan establecidas en la clase principal del sistema incluyendo las incluidas de forma recursiva, o sea, cada clase cargada a su ves hereda todas las demás clases por defecto y puedes llamarlas desde donde te sea mas cómodo.

Mira, dale un vistazo al archivo principal de mi framework:
Código (php) [Seleccionar]
<?php if($_SERVER['SCRIPT_FILENAME'] == __file__) exit;
/* FrameworkDrawCoders : 3.3 / Last modification : 20-Oct-2011 Class version : 1.6 */

/* Execute */
$system = new system();

$system->prepare_permalinks();
$system->stripslash_superglobals();

$system->load_plugins('pre');
$system->load_module();
$system->load_theme();
$system->load_plugins('pos');
$system->theme->show_all();
$system->terminate();
/* End execute */

class system{
/* Class vars */
var $sidebars;
var $main_menu;

/* System Vars */
var $last_error;

/* Default libs */
var $conf;
var $str;
var $path;
var $headers;

function __construct(){
include(dirname(__file__).'/configuration.php');
$this->conf = new configuration();
$this->conf->apply();
/* Global functions */
$this->load_global_libs();
$this->headers->ctype_html();
}

function load_global_libs(){
/* Make matrix */
foreach($this->conf->load_default_libs as $lib){
include_once($this->conf->lib_dir .$lib.'.php');
if(!is_object($this->$lib)){
$this->$lib = new $lib();
$this->$lib->conf $this->conf;
}
}
/* Inject objects */
foreach($this->conf->load_default_libs as $lib){
foreach($this->conf->load_default_libs as $inject){
if((is_object($this->$inject)) and ($inject != $lib)){
$this->$lib->$inject $this->$inject;
}
}
}
}

function load_ret_lib($lib){
if(!$lib preg_replace('|[^A-Za-z0-9_]|i'''$lib))
return false;

if(!include_once($this->conf->lib_dir .$lib.'.php'))
return false;
$retOB = new $lib;

/* Import default libs */
foreach($this->conf->load_default_libs as $lib_def){
if($lib_def != $lib){
if($this->$lib_def)
$retOB->$lib_def $this->$lib_def;
else{
include_once($this->conf->lib_dir .$lib_def.'.php');
$retOB->$lib_def = new $lib_def;
}
}
}

/* Configurations */
$retOB->conf $this->conf;

/* Import libs needs */
if(is_array($retOB->libs_need)){
foreach($retOB->libs_need as $import){
if($this->$import)
$retOB->$import $this->$import;
else{
include_once($this->conf->lib_dir .$import.'.php');
$retOB->$import = new $import;
}
}
}
return $retOB;
}

function load_lib($lib){
if(!$lib preg_replace('|[^A-Za-z0-9_]|i'''$lib))
return false;
if(is_object($this->$lib))
return $this->$lib;

if(!include_once($this->conf->lib_dir .$lib.'.php'))
return false;
$this->$lib = new $lib();

/* Import default libs */
foreach($this->conf->load_default_libs as $lib_def){
if((is_object($this->$lib_def)) and ($lib_def != $lib)){
$this->$lib->$lib_def $this->$lib_def;
}
}

/* Configurations */
$this->$lib->conf $this->conf;

/* Import libs needs */
if(is_array($this->$lib->libs_need)){
foreach($this->$lib->libs_need as $import){
$this->load_lib($import); /* Make lib */
$this->$lib->$import $this->$import/* Import lib */
}
}
return $this->$lib;
}

function load_plugins($prefix){
if($plugins glob($this->path->plugins('local').$prefix.'*.php')){
foreach($plugins as $plugin){
include_once($plugin);
}
}
}

function load_module(){
ob_start();
if($inc $this->mod_selected()){
$this->conf->module_used_dir $this->path->modules('relative') .$inc.'/';
$this->conf->module_selected $inc;
}else{
$this->conf->last_code_status 404;
$this->conf->module_used_dir $this->path->modules('relative') .'status/';
$this->conf->module_selected 'status';
}
include_once($this->path->actual_mod('local') .'index.php'); /* Main file of module */
$this->theme->buffer_module ob_get_contents();
ob_end_clean();
}

function load_component($file){
ob_start();
if(file_exists($inc $this->path->actual_mod('local') .'/__layout/'.$file.'.php')){
include_once($inc); /* Actual mod */

}elseif(file_exists($inc $this->path->modules('local') .$this->conf->main_mod .'/__layout/'.$file.'.php')){
include_once($inc); /* Main mod */

}
$buff ob_get_contents();
ob_end_clean();
return $buff;
}

function load_theme(){
if($this->conf->use_theme){

/* Load components */
$this->theme->buffer_footer $this->load_component('footer');
$this->load_component('main_menu');
$this->load_component('sidebars');

/* Load theme */
$this->conf->theme_dir $this->conf->themes_dir .$this->conf->id_theme .'/';
if(file_exists($this->path->theme('local').'index.php')){
ob_start();
include($this->path->theme('local').'index.php');
$this->theme->buffer_module ''/* less memory */
$this->theme->buffer_theme ob_get_contents();
ob_end_clean();
}else
$this->theme->buffer_theme 'Theme not exist.';

}
}

function terminate(){
if(is_object($this->sql)){
if($this->sql->handle)
$this->sql->close();
}
}

function mod_selected(){
if(!isset($_GET[$this->conf->var_get]))
return $this->conf->main_mod;
if(!$inc preg_replace('|[^A-Za-z0-9_,-]|i'''$_GET[$this->conf->var_get]))
return false;
if(!file_exists($this->conf->modules_dir .$inc.'/index.php'))
return false;
return $inc;
}

function stripslash_superglobals(){
if(get_magic_quotes_gpc()){
$_GET array_map('stripslashes'$_GET);
$_POST array_map('stripslashes'$_POST);
$_SERVER array_map('stripslashes'$_SERVER);
$_COOKIE array_map('stripslashes'$_COOKIE);
$_REQUEST array_map('stripslashes'$_REQUEST);
$_ENV array_map('stripslashes'$_ENV);
}
}

function prepare_permalinks(){
if(isset($_SERVER['REDIRECT_URL'])){ /* Mod rewrite -> to php */
if(dirname($_SERVER['SCRIPT_NAME']) != '/')
$permalink str_replace(array(dirname($_SERVER['SCRIPT_NAME']), '.html'), ''$_SERVER['REDIRECT_URL']); // /permalink/x/aaaaa.html
else
$permalink str_replace(array('.html'), ''$_SERVER['REDIRECT_URL']); // /permalink/x/aaaaa.html

if(substr($permalink01) == '/')
$permalink substr($permalink1);
$permalink explode('/'$permalink);

foreach($permalink as $id => $var){
if($id == 0){
$_GET[$this->conf->var_get] = $var;
}elseif($id == 0){
$_GET[$prevar] = $var;
unset($prevar);
}else{
$prevar $var;
}
unset($id$var);
}
unset($permalink);
if($prevar)
unset($prevar);
}
}

}


Después hago esto:

Código (php) [Seleccionar]
<?php
$this
->load_lib('paginator');
$this->paginator->load_sql('select * from {prefix}users');
$this->paginator->makeHtml();
echo 
'Con un total de '.$this->paginator->pages->toInt().' paginas.';
?>


Y si te fijas llamé a la clase paginator que se cargó dentro de la clase principal y a su ves paginator requiere por defecto la clase str que me transforma las variables a objetos para pharsearlas como por ejemplo $this->user->name->toHtml() o $this->str->_get('algo')->toHtml() y son solo recursiones simples:

Código (php) [Seleccionar]
<?php if($_SERVER['SCRIPT_FILENAME'] == __file__) exit;
/*
FrameworkDrawCoders : 3.*
Last modification : 29-4-2011
Class version : 1.3
*/

class user{
/* System Vars */
var $last_error;
var $libs_need;

/* Default libs */
var $conf;
var $str;
var $path;
var $headers;

/* Libs need */
var $sql;

/* Class Vars */
var $is_logged false;
var $is_loaded false;
var $user_data false;

function __construct(){
$this->libs_need = array('sql'); /* Need */
}

function load($arr false){
if(is_array($arr)){
$find '';
$count 0;
foreach($arr as $var => $val){
$val = new str($val);
$find .= $var.' = "'.$val->toSql().'"';
$count++;
if($count != count($arr))
$find .= ' and ';
}

if(!$this->user_data $this->sql->fast_select('select * from {prefix}users where '.$find.' limit 1'true))
$this->last_error = array('id' => 1'text' => 'Value(s) dont match');
else{
foreach($this->user_data as $var => $val){
$this->$var = new str($val);
}
$this->is_loaded true;
}
}
return $this;
}

function login($arr_condition false){
if(!$this->is_loaded){
$this->last_error = array('id' => 13'text' => 'Is not loaded');
return $this;
}

if(is_array($arr_condition)){
if($arr_condition['password'])
$arr_condition['password'] = $this->cryptPass($arr_condition['password']);

foreach($arr_condition as $var => $val){
if($this->$var->val() != $val){
$this->last_error = array('id' => 14'text' => 'Values dont match');
return $this;
}
}
/* else{ Autologin without data } */

/* Update database */
$this->update(array(
'token' => $this->makeHash(),
'last_login' => time()
));

/* Set the cookie */
setcookie($this->conf->cookiename serialize(array(
'id_user' => $this->id->toInt(),
'password' => $this->password->val(),
'token' => $this->token->val()
)), false'/');

$this->is_logged true;
return $this;
}

function loadCookie(){
if($cookie unserialize(trim($_COOKIE[$this->conf->cookiename]))){
$this->load(array(
'id' => (int)$cookie['id_user'],
'password' => $cookie['password'],
'token' => $cookie['token']
));
if($this->is_loaded){
$this->is_logged true;
$this->update(array('last_login' => time()));
}
}else
$this->last_error = array('id' => 3'text' => 'No cookie to login');
return $this;
}

function logout(){
if($this->is_loaded and $this->is_logged){
$this->update(array('token' => $this->makeHash())); /* AntiHacking account->cookie */
setcookie($this->conf->cookiename''false'/');
$this->is_logged false;
foreach($this->user_data as $var => $val){
unset($this->$var);
}
$this->user_data '';
$this->is_loaded false;
}else{
$this->last_error = array('id' => 16'text' => 'No cookie to login');
}
return $this;
}
 
function newAccount($arr_data){
/* Set default data */
if($arr_data['password']) $arr_data['password'] $this->cryptPass($arr_data['password']);
if(!$arr_data['token']) $arr_data['token'] $this->makeHash();
if(!$arr_data['register_date']) $arr_data['register_date'] time();

if(!$this->sql->update('users'$arr_data))
$this->last_error = array('id' => 8'text' => $this->sql->last_error['text']);
return $this;
}

function update($arr_data){
if(!$this->is_loaded){
$this->last_error = array('id' => 9'text' => 'No data loaded for update');
return $this;
}

if($arr_data['password'])
$arr_data['password'] = $this->cryptPass($arr_data['password']);

foreach($arr_data as $var => $val){
$this->user_data[$var] = $val;
$this->$var = new str($val);
}
return $this->sql->update('users'$arr_data'id = '.$this->id->toInt());
}
 
function delete(){
if($this->sql->raw('delete from {prefix}users where id = '.$this->id->toInt())){
$this->is_logged false;
$this->is_loaded false;
if(is_array($this->user_data)){
foreach($this->user_data as $var => $val){
unset($this->$var);
}
$this->user_data false;
}
}else
$this->last_error = array('id' => 11'text' => 'Error in delete user. Db error');
}

function makeHash($length 10){
return substr(sha1($length.rand(11,99).microtime()), 0, (int)$length);
}

function cryptPass($password){
return sha1($password.sha1("\xa1__".$password)."__\x01");
}

function levelPass($password false){
if(!$password) return 0;
$level 0;
if(strlen($password) >  1) $level += 1;
if(strlen($password) >  2) $level += 1;
if(strlen($password) >  3) $level += 3;
if(strlen($password) >  4) $level += 5;
if(strlen($password) >  5) $level += 10;
if(strlen($password) >  6) $level += 10;
if(strlen($password) >  7) $level += 10;
if(strlen($password) >  10) $level += 10;
if(strlen($password) >  20) $level += 25;
if(!ctype_alnum(payload)) $level += 25;
return $level;
}

}


Si te fijas en este caso no fue necesario solicitar la clase str en el array porque el sistema ya carga algunas clases por default en el archivo de configuraciones que son str, conf y path.

Si le hago print_r() a la clase se pueden ver las recursiones, si modificas $this->conf es lo mismo que modificar $this->algo->conf

Citar
print_r($this->user); exit;
...
[str] => str Object
*RECURSION*
                   [path] =>
                   [headers] => headers Object
                       (
                           [last_error] =>
                           [libs_need] =>
                           [conf] => configuration Object
                               (
                                   [script_url] => http://127.0.0.1/x/index.php
...
#2480
La solucion es cambiar de posicion las teclas al momento de escribir en un campo con contraseña pero eso ya depende del mismo sistema operativo o del software.

También deberia haber algo para que el celular pudiera leer tu mente y escribir las cosas en ves de usar los dedos, pero lamentablemente aun nos falta un poco mas de tiempo hasta que lo hagan poible xD

Talves en un tiempo podamos saber lo que piensa la gente con tan solo apuntar el celular hacia el xD y tendriamos que entrenar a las mentes para protegerse o crear algoritmos de cifrado para las neuronas humanas  :P