OSINT; Hacking with Python (herramientas & Twitter) (parte, V)



OSINT, 5, Python - BLOG - 002

OSINT, 5, Python - BLOG - 003


OSINT, 5, Python - BLOG - 006

OSINT, 5, Python - BLOG - 005


OSINT, 5, Python - BLOG - 007

OSINT, 5, Python - BLOG - 008

Tal y cómo os escribí en “anteriores artículos”, en este · (nº5) · de la serie dedicada a “técnicas” <OSINT> (y algunos más) hablaremos sobre “Twitter” (no confundáis con “red social“, pues no es así) y de las “herramientas” que se encuentran a nuestra disposición para <extraer información>. Dicho lo cuál, – al lío!.. }:D

<Twitter> es una “red social” (no es una “red social”) que según fuentes oficiales, tiene cerca de <240 millones de usuarios> (..)  y afortunadamente para muchos, cuenta con una <API Rest> que permite controlar una cuenta y realizar búsquedas muy especificas utilizando varios tipos de filtros.

OSINT, 5, Python - BLOG - 009

Inicialmente muchas de las funciones definidas en la <API> se podían invocar directamente sin necesidad de tener una cuenta, pero a partir de la “versión 1.1”, es necesario contar con una aplicación en <Twitter> vinculada a una cuenta y una serie de valores que corresponden a los “tokens de autenticación Oauth“.

La <API de Twitter> cuenta con una lista bastante amplia de funciones que pueden ser invocadas desde cualquier cliente, ya sea un programa desarrollado a medida o incluso un “navegador web“, ya que al ser una “API Rest”, utiliza el “protocolo <HTTP>” como “protocolo de transferencia de datos“.

OSINT, 5, Python - BLOG - 010

[#]-; La documentación sobre la <API de Twitter> la encontraréis disponible haciendo "clic"en la imagen superior.

OSINT, 5, Python - BLOG - 011

;-[#] Además de la <API Rest>, también existen algunas otras librerías como por ejemplo la <Streaming API>, <Twitter Cards> y <Twitter for websites>. Más detalles sobre estas y otras librerías haciendo "clic" (otra vez!) en la <imagen superior> ;)


OSINT, 5, Python - BLOG - 013

OSINT, 5, Python - BLOG - 012

Los <servicios REST> pueden ser utilizados con peticiones <HTTP> “estándar” y en cualquier caso, si el servicio lo requiere, las “peticiones” deben contener “cabeceras” concretas que permitan realizar “procesos de <autenticación> y <autorización>”.

Partiendo de esto, existen varias posibilidades para crear un <script> en <Python> que pueda consumir un “servicio” <Rest>, por ejemplo utilizando el módulo “urllib” incluido directamente en el lenguaje u otras librerías escritas por terceros como es el caso de “urllib3” o “requests”. Todas son alternativas validas, sin embargo, un “desarrollador” debe intentar “no reinventar la rueda y verificar si existen soluciones para un problema e intentar aprovecharlas”. En este caso concreto, existen varias “librerías” que permiten utilizar una cuenta existente en <Twitter> y consumir todos los “servicios disponibles” en la <API Rest>.


/- Dos de las más populares son;

·- Tweepy (disponible en <github>);

OSINT, 5, Python - BLOG - 014<Python-Twitter> (también disponible vía <github>);

OSINT, 5, Python - BLOG - 015

Ambas son “librerías” que cumplen bastante bien con su cometido, sin embargo en este articulo (nº5) nos “centraremos especialmente” en el uso de <Python-Twitter>.


\- Antes de continuar, es necesario crear una aplicación en <Twitter> que se encuentre vinculada con una cuenta valida, para ello hacéis "clic" en la siguiente imagen;

OSINT, 5, Python - BLOG - 016

OSINT, 5, Python - BLOG - 017


/- Después de crear su aplicación, deberéis tomar nota de los siguientes campos;

*- Consumer <API> (API KEY).

-* Consumer Secret (API Secret).

*- Access Token.

-* Access Token Secret.

Los cuatro valores saldrán en la pantalla de “gestión de aplicaciones” de <Twitter> y en el caso concreto de los campos “Access Token” y “Access Token Secret” se “crearán” <automáticamente> “pulsando” sobre el botón “create my token access”.

Después de tener los “valores” de <autenticación> necesarios correspondientes a la aplicación creada anteriormente, el siguiente paso consiste en utilizar la “librería” para consumir algunos de los servicios <REST> disponibles en la <API de Twitter>. Para ello, el primer paso consiste en “crear un objeto” del tipo “Api”, tal como se muestra a continuación.

OSINT, 5, Python - BLOG - 018

Los “argumentos” recibidos por el <constructor de la clase Api> deben “coincidir” con los <valores de autenticación de la aplicación>. El nombre de cada uno de los “parámetros” define claramente cual debe ser su valor.


\- Si los valores de autenticación son correctos, la instancia de la clase Api contendrá todos los métodos necesarios para consumir los servicios Rest de Twitter. Para conocer detalladamente dichos métodos, os recomiendo echarle un vistazo a la clase ("clic" en la imagen inferior);

OSINT, 5, Python - BLOG - 019

A partir de aquí, se pueden “crear” <scripts> que permitan “extraer información” de interés, como por ejemplo; sacar un listado de personas que siguen y no siguen a la cuenta vinculada a la aplicación.

OSINT, 5, Python - BLOG - 020


OSINT, 5, Python - BLOG - 021

Salu2


TonyHAT - 384

Anuncios

Un comentario en “OSINT; Hacking with Python (herramientas & Twitter) (parte, V)”

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s