martes, 13 de noviembre de 2012

Problemas con whatsapp

Si tienes whatsapp desde hace años, y tratas bien tu móvil, y nunca has tenido que resetearlo, es probable que en algún momento explote. Sí. Llevo un par de días en que intentaba iniciar whatsapp y me decía que definitivamente, no. Salía. Probé a borrar la ram. Probé a reiniciar, varias veces, y nada. He pensado esta mañana que quizás se debiese a la cantidad de chats y mensajes y demás. No soy una persona que hable mucho. Pero si tu móvil es bastante viejo (5 añitos de nada, pero la gente los cambia como si fuesen cromos) es probable que el tamaño de los logs sobrepase las capacidades del sistema. Me di cuenta entre otras cosas porque en conversaciones de grupo, con gente de clase y tal, iba excesivamente lento. O con personas con las que tenía un largo historial. Con el resto de gente la verdad es que iba bastante bien.

¿A qué se debe?

Bueno, hablo del caso de iOS. Los ficheros se guardan con formato SQLite. El sistema está bien para cosas que requieran poca información, y que sólo vayan a accederse desde un sólo lugar. Problema, tiene sus limitaciones, y la ram del sistema también.

Cada vez que alguien escribe algo, el sistema tiene que recorrer la base de datos, que al fin y al cabo es texto plano, e insertar la entrada.

Solución

Está la opción buena, la mala, y la Max Power.

La buena y la mala: Necesitarás acceso SSH, ergo tener el jailbreak en iOS. En android sólo necesitaréis montar el móvil en vuestro ordenador y acceder. Ergo necesitaréis un terminal con un cliente SSH.

Acceder a la carpeta donde está instalado el whatsapp, en iOS /private/var/mobile/Applications/

Alló haced ls * |grep Whats, y os dirá la carpeta en la que se encuentra. Acceded, luego al directorio Documents, y allí tendréis un archivo llamado ChatStorage.sqlite. He aquí mi problema, 11 MB de información de mierda. Puede que tengais un ChatStorage.copy.sqlite o un ChatStorage~.sqlite, no sé qué son.

Aquí difieren las opciones. La primera es utilizar la herramienta sqlite3.

sqlite3 ChatStorage.sqlite

>delete  from ZWAMESSAGE;

>.quit 

Problema, sqlite no reduce el tamaño de la base de datos hasta que le da la gana. Seguramente hay una orden para hacerlo, pero me he cagado, y el whatsapp  seguía sin funcionar.

La mala: en lugar de borrar la tabla, borrad los archivos con rm ChatSto*

así de sencillo. Mis temores es que me echase de los grupos, y tuviese que suplicar que volviesen a incluirme. Pero afortunadamente no ^^. Sigo pudiendo comentar en todos lados mis gilipolleces.

Ojo, haced una copia de seguridad en disco. Del ordenador. O en el iPhone, pero me parece perder espacio.

 

La Max Power. Borra la aplicación. Vuelve a instalarla. Ahora te va rápido. Te sientes bien con ello? Yo no.

 

Poco más, me despido!

jueves, 26 de abril de 2012

Transferencia de zona en un servidor DNS - Windows

En la anterior entrada mostraba como (intentar) realizar una transferencia de zona a un servidor DNS con GNU/Linux, ahora mostraré como realizarla desde un PC con Windows 7.

Lo primero que necesitamos es conocer es la dirección de los servidores DNS de un domunio, para ello utilizaremos nslookup:
nslookup.exe cni.com
 Siendo cni.exe el dominio a analizar.

  Como vemos la dirección 192.168.0.106 es la ip de servidor de nombres de dominio.

El siguiente paso será realizar una serie de consultas con la herramienta nslookup:
nslookup.exe
server 192.168.0.106
set type=any
ls -d cni.com
Siendo 192.168.0.106 la ip del servidor DNS y cni.com el dominio.

En el anterior ejemplo se conseguía realizar la transferencia de zona, veamos ahora un caso en el que no es posible.

En este caso el servidor de nombres de google.es no nos permite realizar la transferencia de zona desde una IP no autorizada.

Con esto cierro este post, nos leemos en breve ;) .

Aetsu

lunes, 23 de abril de 2012

Transferencia de zona en un servidor DNS - GNU/Linux

  Tiempo atrás ya hice un post relacionado con servidores DNS, en aquella ocasión trataba sobre la herramienta Nslookup que nos permitía hacer determinadas consultas a estos servidores . En este post voy a comentar una posible vulnerabilidad que afecta a este tipo de servidor si está mal configurado.

 La vulnerabilidad a la que haré referencia es conocida como "Transferencia de zona" y nos permite desde una IP no autorizada realizar una transferencia de zona a un servidor DNS.

 Si queremos ver si un servidor es vulnerable desde un SO con GNU/Linux  podemos utilizar la herramienta dig y explicaré como hacerlo con un ejemplo ;) :
dig NS cni.com
Donde cni.com es el dominio cuyo DNS queremos analizar.

La zona redondeada remarcada con rojo es la que nos interesa (ANSWER SECTION), ya que nos mostrará el servidor o servidores que gestionan el dominio, que en este caso es localhost.

Ahora basta con un 
dig AXFR cni.com @localhost
donde cni.com es el dominio y localhost es el servidor DNS.
  Con esto veremos todos los equipos que gestiona el servidor DNS.

  
  El ejemplo anterior nos muestra un resultado que veríamos si existiese la vulnerabilidad, en caso negativo veríamos algo como esto:


  Antes de cerrar el tema hacer mención a una entrada del Rincón de Zerial en la que me he basado para escribir el post que además contiene un script que os facilitará la tarea para auditar vuestros servidores DNS.

En fin, nos leemos en breve ;).
 

Aetsu

sábado, 14 de abril de 2012

Crear PDF con PHP

Introducción

Puede ser que te hayas visto en la necesidad de generar un pdf a partir de PHP, pues la solución es muy sencilla si nos ayudamos de  R&OS : pdf class .
Para la creación documentos smplemente nos hace falta descargarnos y incluir 2 clases : class.ezpdf.php y clas.pdf.php , las cuales contienen las propiedades y métodos para la creación de nuestros PDF's .
La podemos descargar del siguiente link -> LINK DESCARGA
(en el link además encontraremos la carpeta fonts que nos permitira cambiar las fuentes de nuestros PDF's).

A Trabajar

En primer lugar vamos a crear un archivo php muy simple que nos genere pdf's para explicar un poco la mecánica de funcionamiento. (Muy simple la verdad).



1   <?php
2  
include ('class.ezpdf.php');   
3  
$pdf = new Cezpdf();   
4  
$pdf->selectFont('fonts/Courier.afm');  
5  
$pdf->ezText('Prueba de PDF para teclasybits.blogspot.com'20);   
6  
$pdf->ezStream();
7  
8  
?>


#EXPLICACIÓN -> (2)Incluimos la clase ,(3) creamos un objeto del tipo PDF ,(4) le asignamos una fuente , de las que hay en la carpeta fonts claro está ,(5) El texto con el tamaño que queremos que aparezca en el pdf (6) Generamos el PDF.






Vamos hacer ahora un código un poco mas complejo , en el mostraremos una tabla con una traducciones de colores de inglés a castellano.


1   <?php
2  
include('class.ezpdf.php');
3  
$pdf =& new Cezpdf('a4');
4  
$pdf->selectFont('fonts/courier.afm');
5  
$datacreator = array (
6                      
'Title'=>'Ejemplo PDF',
7                      
'Author'=>'SUPERAY',
8                      
'Producer'=>'http://teclasybits.blogspot.com'
9                      
);
10  
$pdf->addInfo($datacreator);
11   
12  
$data[] = array('esp'=>'ROJO''ing'=>'RED');
13  
$data[] = array('esp'=>'AZUL''ing'=>'BLUE');
14  
$data[] = array('esp'=>'AMARILLO''ing'=>'Yellow');
15   
16  
$titles = array('esp'=>'<b>Español</b>''ing'=>'<b>Inglés</b>');
17   
18  
$pdf->ezText("<b>TRADUCTOR COLORES </b>\n",16);
19  
$pdf->ezText("<b>ESPAÑOL-INGLES</b>\n",16);
20  
$pdf->ezText("Lista de colores \n",12);
21  
$pdf->ezTable($data,$titles,'',$options );
22  
$pdf->ezText("\n\n\n",10);
23  
24  
$pdf->ezStream();
25   
?>









Cualquier duda que tengáis no dudéis en preguntar ;)

Offtopic -> Música para trabajar

Igual de importante que es tener ganas y una idea, conseguir un entorno de trabajo adecuado resulta una tarea ardua, ¿A cuantos nos ha pasado empezar con una tarea/proyecto y alrededor tener 10000 tonterías con las que distraernos ?.  A todos, no nos engañemos.

Por eso os proponemos una lista de música con una triple finalidad: Tranquilidad , inspiración y motivación. Quizás alguno de vosotros no elegiríais gran parte de las canciones que hay en la lista ,o simplemente no os guste trabajar con música de fondo ,  pero como se dice , para gustos , lenguajes de programación ( o colores no recuerdo ahora ;D ).

Lista en Spotify :