latest articles

IDE's







Una vez que sabemos conceptos básicos y  tipo de lenguajes de  programación tenemos que  tomar en cuenta que  es lo que necesitamos para comenzar a programar  ya  que no solo  es saber que lenguajes usar y para que sirven en este caso hablaremos de  IDE's para el mejor rendimieto y desarrollo de nuestro proyecto.
Un IDE (integrated development environment o entorno de desarrollo integrado) es un programa el cual su función es brindar a los programadores un conjunto de herramientas para programar de una manera más eficiente. Hay que señalar que un IDE se puede encontrar disponible para un lenguaje exclusivo o al mismo tiempo incorporar un área de trabajo para diferentes lenguajes de programación.

Netbeans

Muy difundido y conocido por una gran cantidad de programadores Netbeans es una herramienta multilenguaje y multiplataforma en la cual podemos desarrollar software de calidad. Con él puedes crear aplicaciones web y de escritorio, además de contar con plugins para trabajar en Android.

Eclipse

Es uno de los IDES más usados, es multiplataforma y multilenguaje. Por muchos programadores es muy aclamado, sin embargo hay que tomar en cuenta que en Eclipse es necesario agregar varios plugins para que funcione al cien por ciento (dependiendo de lo que necesites hacer), si tú comienzas en el mundo de la programación tómalo en cuenta.

Visual Studio

Si lo que deseas es desarrollar para Windows 8 y sus versiones anteriores utilizando tecnología de Microsoft, la mejor opción es Visual Studio. Dentro de este IDE podrás desarrollar utilizando el entorno .net. También tienes la opción de convertirte en un desarrollador para la tienda de Windows.





Read more

Conceptos Basicos






Conceptos Basicos

Que es un dato: Se le llama dato a palabras o numeros que por si solos no tienen significaco, es decir solo se usan para construir  informacion,  de manera conjunta.


Base de datos: es una coleccion de datos de manera relacionadas para darle sentido,  cuando tenemos  una coleccion de datos  se le llama base de datos.

Campo: Area en la que almacenamos datos, para deficnir que dato incluiremos en los campos tenemos que  tener en cuenta los diferentes tipos de datos por ejemplo:


Registro: Un registro (también llamado fila o tupla) representa un objeto único de datos implícitamente estructurados en una tabla.


Archivo: Es  aquel que se compone por  un archivo de datos y un archivo de registro.

Tipos de Datos


Los tipos de datos nos permiten representar los diferentes datos que son necesarios a la hora de implementar un programa. Por ejemplo, si escribimos un programa sencillo que sume, reste, multiplique y divida (una calculadora basica) sera necesario emplear tipos de datos numericos que pueden ser : enteros o flotantes.

TIPOS DE DATOS ENTEROS


1) byte

El tipo de dato byte puede representar datos enteros que se encuentren en el rango de -128 a +127.

El tamaño de un dato de tipo byte es de 8 bits.

2) short

El tipo de dato short puede representar datos enteros que se encuentren en el rango de -32768 y +32767.

El tamaño de un dato de tipo short es de 16 bits.

3) int

El tipo de dato int puede representar datos enteros que se encuentren en el rango de -2147483648 y +2147483647.

El tamaño de un dato de tipo int es de 32 bits.

4) long

El tipo de dato int puede representar datos enteros que se encuentren en el rango de -9223372036854775808 y +9223372036854775807.

El tamaño de un dato de tipo int es de 64 bits.

Para indicar de manera explicita que el dato es un long , se agrega una L o l al final del valor de la variable.


TIPOS DE DATOS FLOTANTES


1) float

El tipo de dato float puede representar datos en coma flotante que se encuentren en el rango de 1.40239846e–45f y 3.40282347e+38f.

El tamaño de un dato de tipo short es de 32 bits.

Para indicar de manera explicita que el dato es un float , se agrega una F o f al final del valor de la variable.


2) double

El tipo de dato double puede representar datos en coma flotante que se encuentren en el rango de 4.94065645841246544e–324d y 1.7976931348623157e+308d.

El tamaño de un dato de tipo short es de 64 bits.

Para indicar de manera explicita que el dato es un double , se agrega una D o d al final del valor de la variable.


TIPO DE DATO BOOLEAN
El tipo de dato boolean puede representar dos valores logicos : true(verdadero) o false(falso).


TIPO DE DATO CHAR

El tipo de dato char se usa para representar caracteres(codigo Unicode).

Un caracter es representado internamente por un entero.


Una vez que sabemos que es un dato y un registro otra pieza fundamental de las bases de datos  son los Archivos: vamos a definir un archivo como una coleccion o conjunto de registros  relacionados siguiendo una estructura homogenea, es decir : 





Asi  es  como se compone una  base de  datos :D  no olvides dar like  y  compartir :3
Read more

Information Gathering



INFORMATION GATHERING

Qué es Information Gathering (La Recopilación de la Información ). Se llama así a la instancia previa de una ejecución de intrusión a un Sistema por alguien no autorizado. Esta fase es en la cual llevamos  una  tarea minuciosa de inteligencia, podríamos denominarlo como el reconocimiento del terreno. Para ser preciso  “la recolección de datos acerca del objetivo  o de algún componente relacionado a este  o parte del mismo”.

   Que debemos saber

       ¿Qué sabemos de nuestro objetivo?
       ¿Por donde fluye la información?
       ¿Qué parte lo conforman?
       ¿Qué sistemas poseen?
       ¿Integrantes de la organización?
       ¿Qué información se tiene sobre ellos?

Técnicas más usadas

       Footprinting: Siguiendo la huella de las pisadas, Se le llama footprinting a la técnica utilizada para recopilar datos relevantes del objetivo a analizar con el fin de realizar un ataque.
      
Por ejemplo nombres, teléfonos, ips, contactos , usuarios , etc.
Se ocupan herramientas como ping , whois , tracert además de datos que se encuentran en Paginas Web , chat, diarios, etc.

Algunos verbos a destacar serían:

        site: para listar toda la información de un dominio concreto.

       filetype o ext: para buscar archivos de un formato determinado, por ejemplo pdfs, rdp (de escritorio remoto), imágenes png, jpg, etc. para obtener información EXIF y un largo etcétera.

        intitle: para buscar páginas con ciertas palabras en el campo title.

        inurl: para buscar páginas con ciertas palabras en la URL.

        O : Buscar por ejemplo por la frase “index of” para encontrar listados de archivos de ftps, etc.

       - Buscar frase exacta     - Encontrar páginas por palabras              - Encontrar páginas palabra u otra

       - Forzar palabras para su búsqueda  - Uso de comodines      - Mayúsculas y minúsculas

       - Uso del comando Link:              - Uso del comando Allinurl:        - Uso del comando Allintitle:

       - Uso del comando Allintext:     - Uso del comando Allinanchor:               - Uso del comando Site:

       - Uso del comando Info:              - Uso del comando Inurl:             - Uso del comando Intitle:

       - Uso del comando Cache:          - Uso del comando Related:       - Uso del comando Stocks:

       - Uso del comando Filetype:      - Uso del comando Define:         - Operadores en google

       - Utilidades en Google    - Búsquedas en Google a través del e-mail       - Las 100 webs más citadas de la red

Google Haking


       Si quieres estudiar diferentes ejemplos de búsquedas avanzadas puedes pasar por la Google Hacking        Database (GHDB). La GHDB es un repositorio con búsquedas posibles en Google que se pueden            utilizar para obtener datos confidenciales de servidores, como ficheros de configuración, nombres,          cámaras, impresoras, passwords, etc. La base de datos está algo desactualizada, pero hemos                      analizado la base de datos entera, y se han predefinido las búsquedas que aún funcionaban y son              más interesantes en la herramienta Anubis:

     HERRAMIENTAS

       Backdoors on-the-fly: Son  Puertas traseras que permanecen para volver a ingresar a una entidad sin despertar sospechas.

       Binarios Troyanizados: Reemplazar archivos, ps,isof o ls.

       Rootkits: Es una serie de aplicaciones para mantener privilegios root dentro del servidor.

       Sniffers: Se trata de capturadores de login y/o paquetes de información.

       Escaneo y fingerprinting: Qué sistema operativo, versión o aplicación del kernel posee el objetivo

       Telneteo:  aplicación para ejecutar comandos telnet) a través de una línea de coman dos (ya sea un prompt MS-DOS o una shell linux o unix), para conectar se a ser vicios (puertos) de un sistema remo to y así obtener información de éste o a través de éste.


       Peticiones HTTP:  CURL es una herramienta de línea de comandos de código abierto y una biblioteca para la transferencia de datos con la sintaxis URL , apoyando DICT , FILE , FTP , FTPS , Gopher , HTTP , HTTPS , IMAP , IMAPS , LDAP , LDAPS , POP3 , POP3S , RTMP , RTSP , SCP , SFTP , SMB , SMTP, SMTPS , Telnet y TFTP . rizo soporta certificados SSL, HTTP POST HTTP PUT , FTP subir, forma basada carga HTTP  servidores proxy , HTTP / 2 , las cookies , el usuario + autenticación de contraseña (Básico , Llanura, Recopilación, CRAM -MD5 , NTLM , negociar y Kerberos ) , archivo transferir hoja de vida , haciendo un túnel proxy y mucho más. 
Read more

Compiladores e IDE´s de desarrollo






Compiladores e IDE´s de desarrollo




Una vez que sabemos conceptos básicos y  tipo de lenguajes de  programación tenemos que  tomar en cuenta que  es lo que necesitamos para comenzar a programar  ya  que no solo  es saber que lenguajes usar y para que sirven en este caso hablaremos de  IDE's para el mejor rendimieto y desarrollo de nuestro proyecto.

Un IDE (integrated development environment o entorno de desarrollo integrado) es un programa el cual su función es brindar a los programadores un conjunto de herramientas para programar de una manera más eficiente. Hay que señalar que un IDE se puede encontrar disponible para un lenguaje exclusivo o al mismo tiempo incorporar un área de trabajo para diferentes lenguajes de programación.

Netbeans


Muy difundido y conocido por una gran cantidad de programadores Netbeans es una herramienta multilenguaje y multiplataforma en la cual podemos desarrollar software de calidad. Con él puedes crear aplicaciones web y de escritorio, además de contar con plugins para trabajar en Android.

Eclipse


Es uno de los IDES más usados, es multiplataforma y multilenguaje. Por muchos programadores es muy aclamado, sin embargo hay que tomar en cuenta que en Eclipse es necesario agregar varios plugins para que funcione al cien por ciento (dependiendo de lo que necesites hacer), si tú comienzas en el mundo de la programación tómalo en cuenta.

Visual Studio


Si lo que deseas es desarrollar para Windows 8 y sus versiones anteriores utilizando tecnología de Microsoft, la mejor opción es Visual Studio. Dentro de este IDE podrás desarrollar utilizando el entorno .net. También tienes la opción de convertirte en un desarrollador para la tienda de Windows.

Dev-C++ es un compilador y entorno de desarrollo para C/C++

Consiste en un editor de múltiples ventanas integrado con un compilador que nos permitirá una compilación, un enlace y una ejecución de aplicaciones rápida y de fácil uso.

Code Blocks

Es el entorno de desarrollo integral gratuito, desarrollado para programadores de C++, que brinda facilidades y comodidades a la hora de trabajar con este tipo de lenguaje. Esta aplicación detecta los compiladores del sistema y así se podrá elegir el que resulte más adecuado para la tarea a realizar. El proceso de compilación es realmente rápido, dado que su velocidad es alucinante.

Xcode


Es el entorno de desarrollo integrado (IDE) creado por Appple que trabaja de manera conjunta con Interface Builder (herramienta gráfica para crear interfaces de usuario) y que se puede descargar de manera gratuita desde la Mac App Store. Este conjunto de herramientas además incluye una colección de compiladores del proyecto GNU (GCC) y puede compilar código C, C++, Objective-C, Objective-C++, AppleScript y Java gracias a una gran gama de modelos de programación.
Read more

Lenguajes de programación






Tipos de Lenguajes de programación 


Una  vez  que tenemos los conocimientos básicos  por así decirlo,  lo primero que tenemos que hacer para entrar en el mundo de la programación es saber identificar que es un lenguaje  de programación.

Como ya  habíamos hablado en el post anterior  un lenguaje de programación es :Un lenguaje  de programación siempre actúa como intermediario y/o traductor entre el ordenador y el usuario, ya que nos sirva para hacernos la tarea lo menos difícil que sea posible, y así no tener que comunicarnos a través del  lenguaje máquina, para ello usamos programas especializado conocido como compilador en el cual podremos introducir un sistema de reglas  o instrucciones que nuestro ordenador debe seguir para estableces comunicación con el mismo.

Una vez que tenemos definido esto,  el siguiente paso es saber diferenciar los tipos de lenguajes que existen, en mi experiencia al principio no se dificulto  ya que solo tenemos tres tipos de lenguajes, de alto nivel, de bajo nivel y nivel intermedio.

La clasificación es la siguiente:

Lenguajes de nivel  alto:

Java

Lenguaje de programación orientado a objetos desarrollado por la empresa Sun Microsystems en 1995 y que se ha extendido ampliamente en World Wide Web. Es un lenguaje de alto nivel y propósito general similar a C++, con marcadas características de seguridad y transportabilidad. Este lenguaje define una máquina virtual independiente de la plataforma donde se ejecuta, que procesa programas, llamados Applets, descargados desde el servidor Web. Además, debido al modo de ejecución de los Applets, este lenguaje es muy seguro frente a la presencia y ataque de virus informáticos.

 PHP


Es un lenguaje de programacion interpretado, diseñado originalmente para la creación de  paginas web dinámicas. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de línea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz grafica usando las bibliotecas Qt o GTK+.

 Visual C

Lenguaje de programación desarrollado en 1972 por el estadounidense Dennis Ritchie en los Laboratorios Bell. Debe su nombre a que su predecesor inmediato había sido llamado lenguaje de programación B. Aunque muchos consideran que C es un lenguaje ensamblador más independiente de la máquina que un lenguaje de alto nivel, su estrecha asociación con el sistema operativo UNIX, su enorme popularidad y su homologación por el American National Standards Institute (ANSI) lo han convertido quizá en lo más cercano a un lenguaje de programación estandarizado en el sector de microordenadores o microcomputadoras y estaciones de trabajo. C es un lenguaje compilado que contiene un pequeño conjunto de funciones incorporadas dependientes de la máquina.

Visual Basic

 En informática, acrónimo de Beginners All-purpose Symbolic Instruction Code (Código de Instrucciones Simbólicas de Uso General para Principiantes). Se trata de un lenguaje de programación de alto nivel desarrollado por los estadounidenses John Kemeny y Thomas Kurtz en el Dartmouth College a mediados de la década de 1960. BASIC se ganó su enorme popularidad gracias sobre todo a dos implementaciones, Tiny BASIC y Microsoft BASIC, que convirtieron a este lenguaje en la primera lengua franca de los microordenadores o microcomputadoras. Otras importantes implementaciones han sido CBASIC (BASIC Compilado), Integer y Applesoft BASIC (para el Apple II), GW-BASIC (para computadoras personales), Turbo BASIC (de Borland) y Microsoft QuickBASIC.

Lenguajes de nivel medio:


Cobol

 En informática, acrónimo de Common Bussines-Oriented Language (Lenguaje Común Orientado hacia Aplicaciones de Empresa), lenguaje de programación desarrollado entre 1959 y 1961 que utiliza como base el idioma inglés y que se caracteriza por su gran facilidad de lectura.

Lisp

 En informática, acrónimo de List Processing. Un lenguaje de programación para ordenadores o computadoras orientadas a la generación de listas, desarrollado en 1959-1960 por John McCarthy y usado principalmente para manipular listas de datos.

 Lenguajes de nivel bajo:

Lenguajes de bajo nivel: Son instrucciones que ensamblan los grupos de conmutadores necesarios para expresar una mínima lógica aritmética. Están intimamente vinculados al hardware. Por norma general están disponibles a nivel firmware, cmos o chip set. Estos lenguajes estan orientados a procesos. Los procesos se componen de tareas. Contienen tantas instrucciones como la arquitectura del hardware así haya sido diseñada.

Lenguaje ensamblador


Radica principalmente que se trabaja directamente con el microprocesador; por lo cual se debe de conocer el funcionamiento interno de este, tiene la ventaja de que en el se puede realizar cualquier tipo de programas que en los lenguajes de alto nivel no lo pueden realizar. Otro punto sería que los programas en ensamblador ocupan menos espacio en memoria.
Read more