# Generación de servicios en red:
 -	Protocolos estándar de comunicación en red a nivel de aplicación (telnet, ftp, http, pop3, smtp, entre otros).
 -	Librerías de clases y componentes.
 -	Utilización de objetos predefinidos.
 -	Establecimiento y finalización de conexiones.
 -	Transmisión de información.
 -	Programación de aplicaciones cliente.
 - Programación de servidores.
 -	Implementación de comunicaciones simultáneas.

# Download Apache Commons Net
* https://commons.apache.org/proper/commons-net/download_net.cgi

# FTP
## Bajar archivo
* https://github.com/reikimitsu/dam2/blob/master/SeviciosProcesos/Tema%204/FTPserver/src/ftpclient/FTP_Descargafichero.java
## Cliente FTP básico
* https://drive.google.com/file/d/1bniOY-APLVMTajioRAgVikbf1B3AjkTL/view

--------------------

# Utilización de técnicas de programación segura:
 -	Prácticas de programación segura.
 -	Criptografía de clave pública y clave privada.
 -	Principales aplicaciones de la criptografía.
 -	Protocolos criptográficos.
 -	Política de seguridad.
 -	Programación de mecanismos de control de acceso.
 -	Encriptación de información.
 -	Protocolos seguros de comunicaciones.
 -	Programación de aplicaciones con comunicaciones seguras.

# Fallos de seguridad con Java

## Ideas que aparecen en el libro

## OWASP
* https://www.owasp.org/index.php/Category:Java

## Lanzar un programa del sistema operativo como argumento desde la línea de comandos
* https://www.jesusninoc.com/08/28/lanzar-un-programa-del-sistema-operativo-como-argumento-desde-la-linea-de-comandos/

## REVERSE ENGINEERING GAMES FOR FUN AND SSRF - PART 1
https://nc-lp.com/blog/reverse-engineering-games-for-fun-and-ssrf-part-1

Las vulnerabilidades SSRF (Server Side Request Forgery) y los ataques de XSPA (Cross Site Port Attacks) son dos fallos de seguridad que van casi siempre de la mano. Los bugs de SSRF se producen en aplicaciones web inseguras que permiten a un atacante forzar al servidor web a realizar peticiones desde dentro del sistema hacia el exterior. Usando esas conexiones, los ataques de XSPA tratan de conocer, en base a las respuestas obtenidas, la lista de puertos que se encuentran abiertos o por el contrario cerrados en el servidor al que se fuerza la conexión.

## En formularios poder detectar un comportamiento anómalo
- REPRESENTAR CLICKS EN PANTALLA TENIENDO ACTIVADO ZOOMIT PARA PODER REPRESENTAR LAS COORDENADAS https://www.jesusninoc.com/01/17/representar-clicks-en-pantalla-teniendo-activado-zoomit-para-poder-representar-las-coordenadas/
- DETECTAR SI EL RATÓN PASA POR ALGUNA POSICIÓN DE LA PANTALLA https://www.jesusninoc.com/02/06/detectar-si-el-raton-pasa-por-alguna-posicion-de-la-pantalla/
- DETECTAR SI EL RATÓN PASA POR ALGUNA POSICIÓN ALMACENADA EN UN FICHERO PREVIAMENTE https://www.jesusninoc.com/01/18/detectar-si-el-raton-pasa-por-alguna-posicion-almacenada-en-un-fichero-previamente/
- DETECTAR CUANDO SE PULSA LA TECLA ENTER
https://www.jesusninoc.com/07/11/detectar-cuando-se-pulsa-la-tecla-enter/

## java.lang.Runtime.exec() Payload Workarounds
* https://tw.saowen.com/a/6d5af89529c1b4f0525b07b97990f151e760f734d530df1b6f6eb1acda0adaaf

## A fully configurable and extendable Bash obfuscation framework. This tool is intended to help both red team and blue team
https://github.com/Bashfuscator/Bashfuscator

## Basic CLI Usage
https://bashfuscator.readthedocs.io/en/latest/Usage.html#basic-cli-usage
```Bash
$ bashfuscator -c "cat /etc/passwd"
```
[+] Payload:
```Bash
eval "$(ijmduN3D=(\[ r f 5 4 G U \" a i s p 1 t \% \} \  e \) \/ \\ 0 b J k z 7 \] \; \{ \| D \( X 2 h 3 \= 9 V 8 w n \$ B c 6 d o);for s7SQJyu8 in 11 1 9 42 13 2 16 14 10 16 7 43 32 24 44 39 8 6 33 37 32 20 19 16 45 16 10 16 47 16 41 16 13 16 11 16 17 16 8 16 20 16 18 28 2 48 1 16 31 25 35 24 23 36 41 5 16 9 42 16 12 16 40 16 3 16 38 16 21 16 26 16 3 16 12 16 21 16 46 16 40 16 34 16 34 16 4 16 36 28 47 48 16 11 1 9 42 13 2 16 14 10 16 7 43 29 24 44 39 8 6 33 0 43 31 25 35 24 23 36 41 5 27 15 7 28 47 48 42 17 18 7 30 22 8 10 35;do printf %s "${ijmduN3D[$s7SQJyu8]}";done)"
```
