Tengo 15 años y quiero comenzar a programar como Cyber-Security. ¿Dónde o cómo empiezo?

Bueno, el primer paso sería obtener una noción exacta sobre lo que son la ciberseguridad y la programación, y lo que no son.

Ambos son muy distintos entre sí: muchas personas en ciberseguridad nunca programan en absoluto, y muchos programadores no saben nada sobre ciberseguridad.

Si necesitará programar en ciberseguridad depende en gran medida de en qué subcampo se especializará. La ciberseguridad es un campo increíblemente enorme y no creo que una sola persona pueda ser proeficiente o incluso saber todo lo que hay en ese campo.

Una cosa es segura: en el 99.9% de los casos no necesitará saber matemáticas avanzadas, al contrario de lo que algunas personas afirman aquí. La excepción es si ingresa a la criptografía académica, que es el estudio de las debilidades de los algoritmos criptográficos (criptología) o de su diseño. Este subcampo está más cerca de las matemáticas puras que de la ciberseguridad.

En (supongo que un poco) el 70% de los casos no necesitará programar, al menos no más que unos pocos scripts para automatizar cosas aburridas. Solo para estar seguro, no está de más aprender Python, ya que este lenguaje es fácil de aprender pero también muy útil para automatizar otros programas. IDApro, un desensamblador, usa python como lenguaje de script por ejemplo. Otro caso sería Bash, que se utiliza para controlar Linux.

Otro desacuerdo con las respuestas anteriores: no aprendes Kali Linux. Kali Linux es solo una colección de herramientas. (Piense en ello como una caja de herramientas). Aprendes a usar las herramientas ellos mismos. Kali y sus herramientas son de su interés si desea ingresar al subcampo Ethical Hacker / Pentester de Ciberseguridad. Esto es probablemente lo más cercano a lo que las personas piensan cuando escuchan “piratería”, pero es fundamentalmente diferente de lo que se ve en las películas. Lo que prueba como probador de penetración son agujeros en los firewalls, configuraciones de aplicaciones web, servidores de correo electrónico, políticas de contraseña, redes (cableadas e inalámbricas) … Encontrar esos agujeros es bueno, pero también debe aprender cómo prevenirlos en primer lugar y cómo para enchufarlos.

Sin embargo, la mayor debilidad en cualquier sistema informático son las personas que los usan. Usted los “prueba” usando ingeniería social. Usted los “arregla” haciendo discursos y talleres, con la esperanza de que les apasione la seguridad, o al menos lo suficientemente paranoicos como para evitar los peores delitos contra el sentido común. Sin embargo, la triste realidad es que a la mayoría no le importa si su lugar de trabajo es pirateado o no.

Suponiendo que ingrese a IPS (sistemas de prevención de intrusiones), puede escribir algunas reglas de firewall o usar algunos lenguajes de secuencias de comandos patentados para configurar dispositivos de seguridad (un dispositivo es básicamente una pieza de hardware especializada en un rack de servidores que solo hace un solo trabajo) Tiene dispositivos para cortafuegos, escáneres de virus, escáneres de correo electrónico, motores de búsqueda …) o puede que ni siquiera necesite secuencias de comandos porque los fabricantes decidieron implementar una interfaz simple de apuntar y hacer clic.

Por último, está el campo de la verificación de software donde definitivamente debes saber cómo programar. La verificación del software implica observar de cerca el código fuente que alguien más escribió e intentar encontrar (y corregir) los errores y agujeros que podrían provocar problemas de seguridad. Este es ciertamente un trabajo muy desafiante y probablemente no lo harás pronto. Sospecho que solo la criptografía pura se acerca al desafío intelectual de la verificación de software. Un buen experto veterano en este campo puede verificar de manera confiable una cantidad de líneas de código de alrededor de un solo dígito por día. El lenguaje de programación depende de qué idioma se haya usado / utilizado para ese software en particular. Como la mayoría del software está escrito en Java, C, C ++ (en este orden), es muy probable que necesite estos lenguajes. El ensamblaje para x86 o arquitectura de brazo también podría ayudar.

En general, para corregir las debilidades en cualquier sistema, debe tener un conocimiento profundo de ese sistema. Esto se aplica a todo en ciberseguridad: redes, sistemas operativos, aplicaciones web, correos electrónicos …

Finalmente, podría combinar cualquiera de esos subcampos en una nueva pieza de software: escriba un cortafuegos simple y crudo usted mismo. O un escáner de correo electrónico para detener el spam. O …

Para volver a su pregunta: ¿Dónde o cómo empiezo? Bueno, esa es una buena pregunta. Yo diría: elige un subcampo, búscalo en wikipedia, sigue los enlaces de referencia al final del artículo y los enlaces a cualquier palabra que no entiendas. Examine quora (por cierto, la función de búsqueda de Quoras para respuestas apesta, prefiero usar google con el prefijo “site: quora.com” antes de cualquier pregunta). Si lo desea, también hay libros sobre seguridad informática en general disponibles, que le darán un resumen del campo sin profundizar demasiado. Puedes ver videos de YouTube si eso es lo tuyo (personalmente prefiero los libros)

Espero que esta respuesta te ayude un poco. Desafortunadamente, debido al tamaño y la complejidad de la Ciberseguridad, esta pregunta es un poco como preguntar cómo comenzar a construir un programa espacial para llegar a la luna.

Gracias por el A2A. Tengo tres respuestas anteriores para que las revise y que juntas responderán su pregunta.

La respuesta de Chris Romeo a ¿En qué habilidades debería centrarme para convertirme en un valioso ingeniero de seguridad de software?

La respuesta de Chris Romeo a ¿Cómo ingreso a la seguridad informática desde la ingeniería de redes?

La respuesta de Chris Romeo a ¿Es mejor especializarse en informática o ciberseguridad si quiero ser analista de seguridad?

A2A

La seguridad cibernética requiere poca o ninguna habilidad de programación. Requiere conocimiento de cómo ocurren las vulnerabilidades de programación, pero como profesional de seguridad, su único rol con respecto a esas vulnerabilidades es aplicar los parches cuando salgan.

La mayoría de lo que hace un profesional de seguridad es realizar escaneos de vulnerabilidad, garantizar que los sistemas se fortalezcan y se apliquen las plantillas de seguridad, realizar auditorías. diseñar y hacer cumplir políticas, gestión breve, etc.

Recomiendo mirar la certificación Security + (incluso si no obtiene la certificación) para ver lo que realmente necesita saber.

Comenzaría evaluándote a ti mismo. Estar en la ciberseguridad requiere muchas habilidades matemáticas. Habilidades matemáticas avanzadas.

Entonces aprendería sobre los diferentes protocolos web. IP, HTTP, FTP, etc. Cómo funcionan, qué significan.

Después de eso, debe aprender sobre los tipos de archivos y el cifrado. ¿Cómo funcionan estos cifrados?

Y mientras lo hace, verá diferentes caminos de seguridad cibernética. Elige uno.

No debe preocuparse por los lenguajes de programación. Debe centrarse más en protocolos y algoritmos.

Mira en Kali Linux y las pruebas de penetración.

Ten mucho cuidado con lo que intentas. Aprenderá a hacer muchas cosas extremadamente ilegales y maliciosas , porque eso es contra lo que necesita defenderse. Cambie la contraseña wifi de sus amigos como una broma y dígale antes, no se asuste, lo atraparán. Recuerde, cuanto más piratee, más hackers lo supervisarán. Esta es una pendiente muy resbaladiza, no quieres que la comunidad de hackers del mundo, o la policía, te busquen solo porque querías ver si podías hacer algo, la mierda golpeará al ventilador más rápido de lo que crees.

En mi opinión, esa es la forma más rápida e interesante de entrar en seguridad. Buena suerte a salvo!

La otra forma menos interesante es aprender sobre redes y seguridad. Es solo una mierda de estudiar y memorizar hasta que consigas un trabajo … a menos que disfrutes codificar, entonces todo se unirá.

Comience por aprender a programar en general. Es posible que desee obtener al menos algunos cursos generales de informática. Haga énfasis en las estructuras de datos y algoritmos.

A continuación, deberá adquirir habilidades sólidas en C / C ++ y sistemas operativos modernos. Con eso me refiero a Unix de algún tipo, probablemente Linux y Windows. La seguridad cibernética requerirá una comprensión profunda de los componentes internos del sistema operativo.

Así que esta es una agenda para varios años antes de que pueda decir que desea centrarse en la Seguridad Cibernética. No estoy diciendo que no debas tocar ese tema en particular, pero te estoy instando a desarrollar tus habilidades y conocimientos en un orden razonable.

Un poco inseguro de su intención, pero si se encuentra en el Reino Unido, el gobierno, el GCHQ y otros organismos están buscando jóvenes y viejos expertos en informática, hombres y mujeres, para convertirse en aprendices, estudiantes universitarios y aprendices avanzados, etc.

La ciberseguridad se convertirá en una profesión / organismo autorizado, si aún no lo es, ingrese al principio.

No lo hagas, es aburrido. Las películas hacen que parezca emocionante, pero es lamentable. A menos que realmente te guste el campo.

Si desea ignorar mi consejo, comience haciendo clic derecho en esta página y haga clic en ver fuente.

Es probable que esto no lo lleve a un viaje de piratería en un solo sentido ni a descubrir por qué el cifrado y la ofuscación son importantes, pero tal vez lo sea.