Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - DtxdF

#521
Cuando realizamos una auditoria o estamos en pleno ataque necesitamos ser rápidos y eficientes, además tener un kit de herramientas que demuestre todo nuestro potencial y conocimiento, el equipo de Error404Security nos trae una distribución que se une para hacer frente a ello. Más de 200 herramientas, eficiencia ante nada, estabilidad y personalización al 100%. Sin duda una distribución que fortalecerá las habilidades de todo pentester.


ReadOS es una distribución basada en Arch Linux diseñada principalmente para la auditoría y seguridad informática en general. Entre lo que destaca podemos mencionar las siguientes categorias con algunas herramientas muy conocidas:

*- Sniffing/Spoofing: Ettercap, Bettercap
*- Explotación: Metasploit-Framework,Yetsinia
*- Redes: Aircrack-NG, Wifiphisher, WiFi-Pumpkin
*- Ingeniería social: Beef-XSS, Delorian, Mydoom
*- MITM: Wireshark, mitmproxy
*- Scanners: Nmap, Nessus (si quiere acceder a la versión paga puede hacerlo manualmente)
*- OSINT: Error404-doxing, Maltego
*- Forense: Volafox, Foremost, Binwalk, Autopsy
*- Aplicaciones web: BurpSuite, OWASP
*- Cracking de contraseñas: John The Ripper, Hashcat, Crunch
*- Ingeniería inversa: Apktool, diStorm3

Solo es un ápice de todo lo que ofrece...


Instalación:

Enlace de descarga: You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login


Notas:

ReadOS cuenta con los repositorios oficiales de Arch Linux sumando los de la propia distribución. Por defecto no viene con una herramienta para gestionar los paquetes de AUR, aunque si se desea utilizarlo simplemente instalando 'Yay' solucionaría ese inconveniente.

Para facilitar las cosas y conservar mejor nuestro tiempo podemos usar los siguientes comandos para actualizar, instalar y remover paquetes:

*- ins <Nombre del paquete>: Instalar paquetes
*- rem <Nombre del paquete>: Remover paquetes
*- upgrade: Actualizar todo la distribución, incluyendo los paquetes que residen en AUR

Como ejemplo práctico:


Código: bash
ins yay


El comando anterior instalaría 'Yay' en un par de minutos

Actualización recomendada:

Es recomendable usar el comando 'upgrade' para además de actualizar el sistema, realiza cambios necesarios en la lista de servidores (mirrorlist)

Instalación en una máquina virtual:

Es obligatorio asignarle 2 CPUs o más a la máquina virtual para poder instalar el sistema con éxito, de lo contrario el instalador no se mostraría y a su vez podría acarrear con comportamientos inesperados o de funcionamiento con la distribución.

En el caso de Virtualbox, se recomienda utiizar el controlador VboxSVGA en la configuración 'Display/Pantalla.'

~ DtxdF
#522
¿Lo instaló manual o uso su gestor de paquetes?. Quizá en los repositorios se pueda instalar con un simple comando, como por ejemplo:

Código: bash
# Arch y derivados
sudo pacman -S sslstrip

# o Debian y derivados
sudo apt-get install sslstrip


Le instalará las dependencias que necesite además del programa en sí.

Otra cosa a tener en cuenta es que debe usar el pip para la versión que requiera sslstrip, en caso de hacerlo manual. Puede ver qué versión de python se está ejecutando implícitamente (puede no funcionar):

Código: python
cat $(which sslstrip) | head -1


Puede que le aparezca o no lo siguiente:

Código: bash
...
#!/usr/bin/python3
...


O también podría aparecer:

Código: bash
...
#!/usr/bin/python
...


Supongamos que es la segunda opción, entonces tendría que usar el siguiente comando para instalar las librerías para esa versión de python:

Código: bash
python -m pip install Twisted


Y por último, ejecutar nuevamente:

Código: bash
sslstrip


~ DtxdF
#523
Como lo explica el compañero, puede usar sockets y un lenguaje de programación. Por ejemplo, podríamos usar Python:

Un ejemplo usando la consola (Servidor):

Código: bash
Python 3.8.5 (default, Jul 27 2020, 08:42:51)
[GCC 10.1.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import socket
>>> server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
>>> server.bind(('localhost', 4848))
>>> server.listen(1)
>>> obj = server.accept()
>>> obj
(<socket.socket fd=4, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('127.0.0.1', 4848), raddr=('127.0.0.1', 57542)>, ('127.0.0.1', 57542))
>>> (sock, addr) = obj
>>> with open('file.txt', 'wb') as fd:
...     fd.write(sock.recv(5))
...
5
>>> exit()
shell$ cat file.txt
Hola


La contraparte (Cliente):

Código: bash
Python 3.8.5 (default, Jul 27 2020, 08:42:51)
[GCC 10.1.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import socket
>>> client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
>>> client.connect(('localhost', 4848))
>>> client.send(b'Hola\n')
5
>>>


~ DtxdF
#524
@You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

Hay credenciales que vienen tanto pre-determinadas para acceder al panel de control como para conectarse usando WIFI, es relativo al modelo y fábricante, aunque muchos podrían usar credenciales que otros usan, como por ejemplo, la típica: admin:admin, admin:pass, user:pass o admin:12345; claves de panales de administración e incluso para cámaras IPs.

Sobre credenciales para conectarse vía WIFI, puede que sea un poco más complejo, algunas veces los fábricantes les importa un hue** y colocan cosas que no son si ni siquiera deducibles, sino que se aprenden directamente (memorizandolas, por ejemplo), lo cual puede ser riesgoso debido a la ignorancia de los usuarios al no cambiarlas por pereza. Incluso el atacante no necesita esforzarse y usar WPS, tanto apicando fuerza bruta, ataques por diccionario o incluso sabiendo cómo se generan estos pines... como mi viejo belkin :'-(.

Eso es lo que le dijo el compañero Kirari, simplemente busque en el manual del router, vea la caja, etc.

No sé si ya leyó esto: You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

~ DtxdF
#525
Dudas y pedidos generales / Re:MAC y log de mi router.
Agosto 07, 2020, 02:08:12 AM
Quizá es llamado client list o mac list, cosas así. Aunque no necesariamente puede hacerlo a través del router, puede usar diferentes comandos, tales son: nmap, arp y muchos otros.

Quizá observando la tabla ARP de su sistema:

Código: bash
arp -a


Ó

Escaneando la red con los host que responden:

Código: bash
nmap 192.168.1.1/24 -sn -T5 -vv -n


Son ejemplos y debería leer el manual que incluso está en nuestro idioma.

Tal vez le interese:

*- You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
*- You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
*- man nmap


~ DtxdF
#526
Dudas y pedidos generales / Re:Tienda online
Agosto 07, 2020, 01:50:16 AM
Si está en cero puede costar un montón y mucho más el mantenimiento. Puede optar por los siguientes servicios y/o aplicaciones que le permitirán crear tiendas web's: You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

También si desea ir más allá, puede aprender HTML, CSS, Javascript y PHP que mayormente son los que se usan.

~ DtxdF
#527
Puede crear su propio programa que haga lo que desea, simplemente usando permutaciones. Aquí un ejemplo con un algoritmo ineficiente:

Código: cpp
#include <iostream>
#include <cstring>

void permute(char array[], char flags[], char buff[],
size_t index, size_t length) {
size_t i;

if (index == length) {
buff[index] = '\0';
std::cout << buff << std::endl; /* Podrías colocar una función aquí que guarde ese arreglo, o un callback, por ejemplo */

} else {
for (i = 0; i < length; i++) {
if (flags[i] == '1') {
buff[index] = array[i];
flags[i] = '0';
permute(array, flags, buff, index + 1, length);
flags[i] = '1';

}

}

}

}

int main() {
char array[] = "abcd";
char flags[] = "1111";
char buff[5];

permute(
array,
flags,
buff,
0,
strlen(array)

);

return 0;

}


Por cierto, no se confunda entre Fuerza Bruta y Ataques por Diccionario, son cosas diferentes.

Mientras, la fuerza bruta se aplican una serie de combinaciones posibles, quizá todas, en cambio los ataques por diccionario se usa un archivo o una base de datos de gran tamaño para compararlo con otro valor.

~ DtxdF
#528
Apoyo al compañero @You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login. En serio, ¿para qué molestarse?, simplemente ignorarlo y seguir con su vida como si nada hubiese sucesido será lo mejor para usted. No pierde nada, un click y listo, sigue jugando.

~ DtxdF
#529
Dudas y pedidos generales / Re:Ayuda Script Python
Agosto 05, 2020, 06:34:54 PM
Hola @You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

Si tiene una duda, puede crear un post nuevo: You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login y con gusto se le responderá.

~ DtxdF
#530
@You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

No amigo, nunca dije que podrían ser dos caracteres, cité el manual de crypt(...) según las partes de interés. Como por ejemplo esta:

Citarsalt es una cadena de dos caracteres elegida del conjunto [a- zA-Z0-9./]. Esta cadena se utiliza para perturbar el algoritmo en 4096 formas diferentes.

Lo que significa que se pueden usar caracteres en el salt que estén en el rango de la a a la z (incluyendo mayúsculas) y números a partir del 1 al 9 sumando los caracteres . (punto), / (barra diagonal).

Puede leerlo usando el comando: man 3 crypt

Como lo menciona nuestro compañero @You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login en los tipos de hashing en el fichero que está leyendo, puede ver que su hash es el tipo '6' que corresponde a la función SHA-512, sin embargo crypt(...) hace mucho más que eso, entre ello están las derivaciones, entre otras cosas.

Mire lo que está en negrita: $6$.63oZj8Hf87vZAnT$yBeieSF4sVMTL6ndq2MJF1S1gLdQjs5VDacSgLJTAzi/ZEcOgp9nkNSGa0qdrTgUqY231zx.sh88QkRZ3r/VW0

Amarillo: La función que se usó
Rojo: El salt
Verde: El hash

~ DtxdF
#531
Puedes usar la función 'crypt(...)'...

Según el manual (man 3 crypt):

Citarcrypt () es la función de cifrado de contraseña. Se basa en el algoritmo estándar de cifrado de datos con variaciones destinadas (entre otras cosas) a desalentar el uso de implementaciones de hardware de una búsqueda clave.

salt significa:

Citarsalt es una cadena de dos caracteres elegida del conjunto [ a - zA - Z0 - 9. / ]. Esta cadena se utiliza para perturbar el algoritmo en 4096 formas diferentes.

En base a ello, y para facilitar las cosas, puedes usar crypt(...) directamente en Python:

Código: python
import crypt

# SHA512
type = '6'
# El «salt»
salt = '.63oZj8Hf87vZAnT'
# La cadena a hashear
word = 'holahola'

print(crypt.crypt(word, '$%s$%s$' % (type, salt)))


El resultado sería:

Código: bash
python3 script.py
$6$.63oZj8Hf87vZAnT$yBeieSF4sVMTL6ndq2MJF1S1gLdQjs5VDacSgLJTAzi/ZEcOgp9nkNSGa0qdrTgUqY231zx.sh88QkRZ3r/VW0


La razón por la que no te generaba igual es que se usaba directamente la función sha512 sin derivaciones. Para ilustrar mejor lo que digo:

Código: python
import hashlib

string = b'holahola'

print(hashlib.sha512(string).hexdigest())


El resultado sería:

Código: bash
python3 script.py
8984264870d10bd7d1456afa517587bcb9d538f537f5ed9a89118aa02ba61e821f908dba588c61d4f798734737cbda3577649b528beb9fea600cc2dcb8a2502d


Te podría interesar:

*- You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
*- You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
*- You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login


~ DtxdF
#532
Claramente no es indispensable ni tampoco es una distribución novedosa o mucho menos estable, pero tampoco significa que no se pueda usar para muchas cosas.

Kali Linux es una distribución más del montón. Usar una distribución Gnu/Linux (o derivada) no es solo instalar un sistema operativo cualquiera, implica adentrarse un poco en su filosofía que aunque suene un poco fanatista, es fascinante y de algo le sacas ventaja, tal vez no sea el caso de Kali Linux, y aunque los mismos autores recomienden que no se disponga su uso para usuarios sin experiencia (en nada o por lo menos en lo más básico) ironicamente ha resultado ser aceptada por muchas personas (con o sin experiencia).

Con que no hay nada novedoso es porque simplemente digo que es así; puedes instalar Debian Testing e instalarle todas las herramientas que desees, lo mismo equivale para Blackarch Linux que con instalarle las herramientas a Arch Linux dedicadas a estos temas funcionaría sin inconvenientes, por supuesto, implica un poco más de conocimientos y tiempo, pero prácticamente es lo mismo, no hay nada nuevo.

Entonces, ¿por qué se crean y usan estas distribuciones?, simple, más allá de lo trascendental que le brindan las empresas, instituciones y las personas (lo cual equivale a una publicidad casi perfecta) es que no les gusta perder tiempo haciendo cosas que muchos han hecho, cosa que no es recomendable hacerlo si no tienes experiencia (si estas en cero) porque no aprenderías nada o muy poco.

Además que hay confusiones de muchas personas sobre el hacking, el pentesting, la seguridad y todos los temas correlacionados, sumandole un poco a que las personas quieren todo de la noche a la mañana, se tiene el mal pensamiento que ser hacker es golpear el teclado mientras parece que te estuviera dando un ataque por la diabetes hasta que en la pantalla te aparezca el mensaje "ACCESS GRANTED". Las instituciones (mayormente las que imparten cursos) también juegan un papel grande en todo, porque hace que las personas caigan aún más en la ignorancia, pero es el deber de ellos mismos (de las personas) indagar más allá de lo que se enseña en un tutorial, un curso, un libro, un vídeo y todo lo que se considere útil para aprender.

Siempre digo, puedes y tienes que indagar mucho más allá de los comandos que se ejecutan, por ejemplo aprender nmap es una oportunidad excelente más allá de aprenderte parámetros que se usan en situciones que parecen de película, tienes la oportunidad de comprender mucho más fácilmente las redes, sus módelos, su conceptos, sus términos. No solo con nmap, si quieres aprender sobre ataques SQL, además de tener que aprender el lenguaje y prácticar con base de datos, tienes herramientas que hacen eso, y es tu deber indagar cómo funcionan internamente para aprender y comprender. Básicamente lo que trato de decir es que usar herramientas que automatizan y abstraen muchos conceptos al usuario, es el deber de éstos indagar más allá.

Por ejemplo, recuerdo aún cuando tenía 8 años y mi primera distribución fue Ubuntu, sentía una facinación indescriptible por el universo que nunca me habían contado (universo que estaba solo cruzando la calle), ya que en mi país el 90% (cifra totalmente inventada por mí) de las personas e incluso los mismísimos servidores usan Windows (muchos, no todos), lo cual hacía que no pudiera ver más allá de mis narices, hasta que un día abrí un cajón de un familiar y encontré un CD muy viejo y hasta rayado, me puse a indagar un poco qué significaba la palabra Ubuntu, hasta que descubrí que era un sistema operativo. Me encanta leer por lo que era aun más increíble encontrar cualquier información y leer durante horas y horas un mismo tema con diferentes formas de hacerlo, por eso es que me encantó este mundo. En la actualidad con solo 9 años después de dar un principio al universo que había descubierto, me encuentro usando Arch Linux con toda la pasión que le puedo dar y me gusta programar allí, incluso tengo mis otras distros favoritas: Debian y AntiX.

En resumen gente, recomiendo a los primerizos que se centren en lo que deseen hacer, investigen, lean, comprendan mucho más allá que les enseñan los profesores y las instituciones, ustedes son los únicos que forman su propio camino y espero lo hagan bien, porque todos somos genios pero aún no lo sabemos...

Gracias @You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login, espero sigas escribiendo más artículos  ;D


~ DtxdF
#533
Un placer @You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login, con gusto vendrán muchísimos más en un futuro no muy lejano :'D

~ DtxdF
#534
@You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

Creo que esto es lo que buscas: You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

También te podría interesar proxychains.

~ DtxdF
#535
No hay necesidad de usar una máquina virtual, al menos que desees usar otro sistema operativo con el objetivo de utilizar la API de éste, trabaja tranquilo con las instrucciones x86 en una de x86_64. Suerte ^-^.

~ DtxdF
#536
Es un placer @You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login, como siempre.

Le deseo suerte.

~ DtxdF
#537
Dudas y pedidos generales / Re:AES 256 y los bytes
Julio 30, 2020, 01:20:44 PM
@You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

Como le mencioné, el error es muy frecuente (sin importar la implementación) cuando el modo a usar requiere que sea un múltiplo del tamaño del bloque, es aplicado tanto para cifrar como para su contraparte, descifrar, por lo que si usted borra uno o más bytes de la cadena cifrada ocurrirá el susodicho error; si modifica un byte por otro, pero la longitud sigue siendo un múltiplo del tamaño del bloque, el error dependerá de la implementación de AES y el modo CBC.

Para ilustrar mejor lo que traté de describir, veamos lo que sucede cuando cifro un dato y le elimino el último byte para luego descifrarlo:


Simplemente generó un error porque la longitud original era de 16 y ahora es de 15 bytes.


Veamos otro, pero a diferencia del anterior en el siguiente no descifraremos la cadena cifrada completamente, sino un múltiplo de ésta:


Como se puede apreciar, se descifra correctamente a pesar de no ser de la misma longitud que la original, pero es un múltiplo del tamaño de bloques, es por es que es satisfactorio.

Ahora veamos lo que sucede cuando se trata de descifrar la cadena cifrada con el útimo byte modificado:


Se descifró correctamenete, aunque también si se es observador, no es la cadena original la que obtenemos.

Bien, tal vez usted dirá pero a mí me genera un error cuando modifico un byte, como le dije depende de la implementación misma y del algoritmo. En esta You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login puedes cifrar datos usando AES en dos modos ECB y CBC, si se trata de hacer todo lo que he hecho en las imágenes, genera un error, por lo que sería mejor descripción de lo ya expliqué.

Tal vez le interese:

* You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
* You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login


~ DtxdF
#538
Dudas y pedidos generales / Re:AES 256 y los bytes
Julio 30, 2020, 10:32:34 AM
Hola @You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login ^-^

Deduciendo lo que está tratando de hacer y el error me suena a que no le está pasando un relleno (pad/unpad) a los datos antes de cifrar. Me refiero a la típica función o algoritmo que rellena los datos sin formato hasta que sea múltiplo del tamaño de bloques.

Aunque depende del modo que esté usando, ya que si usamos CTR, no pasará nada, pero si usa ECB, puede obtener un error. También debe recordar que en el cifrado de bloques no sólo tiene un nombre bonito, sino que también es signiticativo a su función interna. Si trata de usar el modo ECB y le pasa 16 bytes (sin rellenar), cifrará sin problemas, pero si le pasa 17 bytes, error.

~ DtxdF
#539
Hola @You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login ^-^

No se le dice compilador, es llamado ensamblador y cada uno tiene sus sentencias diferentes (aunque muchos le siguen el mismo juego), también es relativa a la arquitectura. Podrías probar con NASM, MASM o en Gnu/Linux hay uno que es YASM siendo un ensamblador que acepta las sintaxis de GAS y el NASM.

Consejo: Comienza con una arquitectura con instrucciones muy reducidas (como 8086) y luego vas aumentando poco a poco, recuerda que esto requiere paciencia, perseverancia y esfuerzo, pero nada que no puedas lograr estudiando. Suerte.

~ DtxdF
#540
Te la pongo simple @You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

Resetear: Me suena a los mismo que reiniciar, y supongo es a lo que te refieres. Reiniciar es cambiar el estado de encendido a apagado, y luego a encendido.
Restablecer: Volver al estado que se encontraba en un punto (el cual podría ser el que vino de fábrica o no)
Formatear: Dar formato a una partición para instalar el sistema de archivos y demás procesos que estén correlacionados.

~ DtxdF