¿Los piratas informáticos tienen IDEs? ¿Qué idioma usan comúnmente en la piratería?

Me clasificaría como un humilde maestro con algunos conocimientos sobre seguridad informática, definitivamente no es un hacker, pero lo intentaré para responder a su pregunta.

Usas lo que la situación particular requiere. También depende de lo que considere al “piratear” (generalmente significa obtener acceso a un sistema o aplicación remota o local).

Hay muchas herramientas para hacer el trabajo. Si los quiere en un paquete elegante, la distribución de Kali Linux es lo que necesita. De lo contrario, cualquier sistema operativo encajaría. Si está trabajando en una distribución de Linux sin GUI, en realidad solo se limitaría a las aplicaciones de consola y consola. Si utiliza distribuciones de Linux con GUI, Windows o MAC, a veces utilizará la consola, a veces aplicaciones de GUI.

Hackear sitios web:

  • encontrar puntos débiles: se puede hacer con depuradores, scripts, incluso navegadores y sus herramientas de desarrollo (es decir, inyección SQL, CORS). Por ejemplo, puede explotar la API no segura al monitorear el tráfico del navegador en las herramientas de desarrollador. Otra forma es usar, por ejemplo, Wireshark para monitorear el flujo de datos de la red. También hay mejores prácticas para las pruebas de penetración al implementar un sitio web.
  • creación de guiones: cualquier editor de texto general puede hacer el truco (elija el que desee). Por lo general, se realiza una gran cantidad de secuencias de comandos en (Javascript para secuencias de comandos del lado del cliente; python, perl, bash para algunas cosas avanzadas).
  • ampliar las capacidades del sitio web en la interfaz, por ejemplo, Google Chrome, ContentScripts. Puedes escribirlos en cualquier editor de texto.

Hackear servidores: cosas muy complicadas, requiere mucho tiempo para encontrar un punto débil:

  • infiltrarse en la red local o de dominio del servidor escribiendo un código malicioso (o en términos simples, un gusano); cualquier tipo de lenguaje de programación funcionaría (depende del sistema operativo de la máquina de destino). En realidad, esto requiere más habilidades sociales que habilidades de programación. El usuario tiene que ser engañado para ejecutar el código malicioso de alguna manera (el usuario abre el correo electrónico infectado, inicia sesión en un sitio web imitado en lugar del real).
  • comprobación de seguridad básica: el escaneo de los servicios del servidor y el sistema operativo es una práctica común, por ejemplo, nmap es una buena herramienta para verificar los puertos TCP / UDP abiertos que pueden ser de interés o pueden no ser seguros. Por lo general, todo buen administrador del servidor debe estar atento a los puertos abiertos y las vulnerabilidades.
  • encontrar el punto débil: los escáneres de redes locales pueden ayudar. Wireshark, IpTools son buenas aplicaciones que pueden ser de ayuda. Los puntos más vulnerables pueden incluir servidores VPN, cuentas de dominio predeterminadas, cuentas de dominio de empleados mayores (generalmente contraseñas débiles o algo adivinables)

Hackear redes inalámbricas:

  • capturando tráfico y descifrando la clave WEP (con mucho tiempo y tráfico WPA1 / 2) – airsnort, airodump, aircrack, Kismet
  • Agrietamiento GSM: Topguw, Kraken, Airprobe

Ingeniería inversa: por ejemplo, juegos de craqueo, aplicaciones, etc.

  • C # – ILSpy, Reflector, JetBrains dotpeek
  • C ++: cosas realmente difíciles de descompilar, hay algunas herramientas, pero la legibilidad del código después de la descompilación es casi terrible.
  • Android APK: cualquier aplicación de extracción ZIP, dex2jar, jqGui

Las aplicaciones y técnicas mencionadas son solo el mínimo muy básico de la interminable lista de herramientas que existen. Por lo general, se crean para pruebas de penetración, no para el pirateo en sí. Las aplicaciones maliciosas se crean de forma personalizada, es por eso que los softwares antivirus y antispyware se utilizan para detectar actividades poco comunes de un software específico.

Los ‘hackers’ usan IDE y otros editores para crear las herramientas que ejecutan en la línea de comandos. ¿Por qué lo ejecutan en línea de comando?

porque sería un esfuerzo adicional hacer un botón solo para ‘ejecutarlo’ (GUI es un complemento que generalmente no necesita)

porque con la línea de comando, el comando / herramienta / programa / pirateo puede ejecutarse en una computadora al otro lado del mundo, sin sentarse en la pantalla del escritorio de la computadora.

porque la GUI generalmente depende mucho del usuario de escritorio. no quieres que aparezca el botón “Ejecutar pirateo ahora” en el Escritorio del administrador, ¿verdad?

porque el hacker está interesado en la información, no en trucos bonitos

y porque piratear no se parece en nada a lo que ves en juegos o películas. La parte de hackeo llega mucho antes de la ejecución del hack y, francamente, es bastante aburrida para los no iniciados.

Ah, y para los lenguajes utilizados: C, C ++, C #, Java, Haskell, Python, Ruby, Perl, PHP, bash, tcsh, sh, Assembler, SQL, CSS, Javascript … y cualquier otro lenguaje que haya, ya sabes, solo el único idioma para hacer el trabajo a mano.

No diría que un hacker tiene un IDE específico , pero lo más probable es que use Vi (o Vim) en un sistema basado en UNIX.