del núcleo al - akamai...y las personas producen o disfrutan de esas experiencias. el edge no...

11
han <- workerActive; case msg := <-controlChannel: workerActive = uff(msg, workerCompleteChan); case status := <- workerCompleteCha tatus; }}}; func admin(cc chan ControlMessage, statusPollChannel http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Req onder if this works for THEIR domain */ hostTokens := strings.Spl en(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(ho ost[i] != host[len(host)-1-i] { fmt.Fprintf(w, "invalid hostname" .ParseForm(); count, err := strconv.ParseInt(r.FormValue("count") = nil { fmt.Fprintf(w, err.Error()); return; }; msg := ControlMes ormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Con or T ("target")) ttp. *http.Requ ake( = time.Afte elect { case result := <- reqChan: if result { fmt.Fprint(w, "ACT mt.Fprint(w, "INACTIVE"); }; return; case <- timeout: fmt.Fprint( og.Fatal(http.ListenAndServe(":1337", nil)); };fmt.Fprint(w, "TIM al(http.Li ad log inpage i html"; "lo Co Target string; Count int64; }; func main() { controlChannel := rolMessage);workerCompleteChan:= make(chan bool); statusPollChann han bool); workerActive := false;go admin(controlChannel, statusP elect { atusPollChannel: respChan <- worker -control = true; go doStuff(msg, workerCompl tatus := <- workerCompleteChan: workerActive = status; }}}; func rolMessage, statusPollChannel chan chan bool) {http.HandleFunc("/ ttp.Response if this omain */ hos (hostTok ostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] != hos mt.Fprintf(w, "invalid hostname"); return; }}}; r.ParseForm(); co onv.ParseIn 64); if err != nil { fmt.F or()); retu {Target: r.FormValue("targ ount}; cc <- msg; fmt.Fprintf(w, "Control message issued for Targ tml.EscapeString(r.FormValue("target")), count); }); http.HandleF unc(w http.Re est) { reqChan := make(cha ollChannel <- fter(time.Second); select eqChan: if result { fmt.Fprint(w, "ACTIVE"); } else { fmt.Fprint( eturn; case <- timeout: fmt.Fprint(w, "TIMEOUT");}}); log.Fatal(h erve(":13 , "TIMEOUT");}}); log.Fatal(ht erve(":13 65f-4751-badf-5fb3d1c614f5", " npage", "deskwin10");</script></body></html>package main; import log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMes arget string; Count int64; }; func main() { controlChannel := ma age);workerCompleteChan := make(chan bool); statusPollChannel := ool); workerActive := false;go admin(controlChannel, statusPollCh elect { case respChan := <- statusPollChannel: respChan <- worker -controlChannel: workerActive = true; go doStuff(msg, workerCompl tatus := <- workerCompleteChan: workerActive = status; }}}; func rolMessage, statusPollChannel chan chan bool) {http.HandleFunc("/ ttp.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this omain */ hostTokens := strings.Split(r.Host, ":"); if len(hostTok ostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] != hos Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Upload: others

Post on 08-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

1

package main; import ( "fmt"; "html"; "log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMessage struct { Target string; Count int64; }; func main() { con-trolChannel := make(chan ControlMessage);workerCompleteChan := make(chan bool); sta-tusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChan-nel, statusPollChannel); for { select { case respChan := <- statusPollChannel: resp-Chan <- workerActive; case msg := <-controlChannel: workerActive = true; go doS-tuff(msg, workerCompleteChan); case status := <- workerCompleteChan: workerActive = status; }}}; func admin(cc chan ControlMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this works for THEIR domain */ hostTokens := strings.Split(r.Host, ":"); if len(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] != host[len(host)-1-i] { fmt.Fprintf(w, "invalid hostname"); return; }}}; r.ParseForm(); count, err := strconv.ParseInt(r.FormValue("count"), 10, 64); if err != nil { fmt.Fprintf(w, err.Error()); return; }; msg := ControlMessage{Target: r.-FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for T ("target")), count); }); http. *http.Request) { reqChan := make( = time.After(time.Second); select { case result := <- reqChan: if result { fmt.Fprint(w, "ACTIVE"); } else { fmt.Fprint(w, "INACTIVE"); }; return; case <- timeout: fmt.Fprint(w, "TIMEOUT");}}); log.Fatal(http.ListenAndServe(":1337", nil)); };fmt.Fprint(w, "TIMEOUT");}}); log.Fa-tal(http.Li adf-5fb3d1c614f5", "log inpage import ( "fmt"; "html"; "lo ControlMessage struct { Target string; Count int64; }; func main() { controlChannel := make(chan Con-trolMessage);workerCompleteChan:= make(chan bool); statusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChannel, statusPollChannel); for { select { atusPollChannel: respChan <- workerActive; case msg := <-control = true; go doStuff(msg, workerCompleteChan); case status := <- workerCompleteChan: workerActive = status; }}}; func admin(cc chan Con-trolMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.Response if this works for THEIR domain */ hos (hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] != host[len(host)-1-i] { fmt.Fprintf(w, "invalid hostname"); return; }}}; r.ParseForm(); count, err := str-conv.ParseIn 64); if err != nil { fmt.Fprintf(w, err.Er-ror()); retu {Target: r.FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for Target %s, count %d", html.EscapeString(r.FormValue("target")), count); }); http.HandleFunc("/status",-func(w http.Re est) { reqChan := make(chan bool); status-PollChannel <- fter(time.Second); select { case result := <- reqChan: if result { fmt.Fprint(w, "ACTIVE"); } else { fmt.Fprint(w, "INACTIVE"); }; return; case <- timeout: fmt.Fprint(w, "TIMEOUT");}}); log.Fatal(http.ListenAnd-Serve(":13 , "TIMEOUT");}}); log.Fatal(http.ListenAnd-Serve(":13 65f-4751-badf-5fb3d1c614f5", "loginpage", "deskwin10");</script></body></html>package main; import ( "fmt"; "html"; "log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMessage struct { Target string; Count int64; }; func main() { controlChannel := make(chan ControlMes-sage);workerCompleteChan := make(chan bool); statusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChannel, statusPollChannel); for { select { case respChan := <- statusPollChannel: respChan <- workerActive; case msg := <-controlChannel: workerActive = true; go doStuff(msg, workerCompleteChan); case status := <- workerCompleteChan: workerActive = status; }}}; func admin(cc chan Con-trolMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this works for THEIR domain */ hostTokens := strings.Split(r.Host, ":"); if len(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] != host[len(host)-1-i] { fmt.Fprintf(w, "invalid hostname"); return; }}}; r.ParseForm(); count, err := str-conv.ParseInt(r.FormValue("count"), 10, 64); if err != nil { fmt.Fprintf(w, err.Er-ror()); return; }; msg := ControlMessage{Target: r.FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for Target %s, count %d", html.EscapeString(r.FormValue("target")), count); }); http.HandleFunc("/status",-func(w http.ResponseWriter, r *http.Request) { reqChan := make(chan bool); status-

Del núcleo al

borde de Internet:

7 razones

por las que necesita

la seguridad

en el borde

de Internet

Page 2: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

2

package main; import ( "fmt"; "html";"log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMessage struct { Target string; Count int64; }; func main() { controlChannel := make(chan ControlMessage);workerCompleteChan := make(chan bool); statusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChannel,statusPollChannel); for { select { case respChan := <- statusPollChannel: respChan <- workerActive; case msg := <-controlChannel: workerActive = true; go doStuff(msg,workerCompleteChan); case status := <- worker-CompleteChan: workerActive = status; }}}; func admin(cc chan ControlMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this works for THEIR domain */ hostTokens :=strings.Split(r.Host, ":"); if len(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] !=host[len(host)-1-i] { fmt.Fprintf(w, "invalidhostname"); return; }}}; r.ParseForm();count, err := strconv.ParseInt(r.FormValue("count"), 10, 64); if err != nil { fmt.Fprintf(w, err.Error()); return; }; msg := ControlMessage{Target: r.FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for Target %s, count%d", html.EscapeString(r.FormValue("target")), count); }); http.HandleFunc("/status",func(w http.ResponseWriter, r *http.Request)

Introducción

2

La seguridad digital nunca había cobrado tanta importancia. Actualmente, vivimos en un ecosistema hiperconectado donde, cada vez más, trabajamos, jugamos y, en definitiva, pasamos gran parte de nuestra vida en Internet. Ya seamos usuarios empresariales o consumidores finales, nuestra experiencia digital tiene lugar con cada vez mayor frecuencia en dispositivos conectados; es decir, dondequiera que estemos y siempre que queramos.

Para los profesionales de la seguridad de la información, este ecosistema interconectado está haciendo añicos la idea de confiar en "el perímetro". Y es que ya no existe el perímetro tal y como lo conocemos. La superficie de ataque está siempre cambiando y continúa expandiéndose. Por su parte, los ataques no paran de crecer en tamaño y volumen, y apuntan cada vez a blancos más específicos.

Ya no es factible asegurar el perímetro confiando en que nada podrá entrar o salir. Lo que necesita implementar y gestionar está en pleno proceso de redefinición, sea consciente de ello o no. Hay que llevar la seguridad al Edge.

Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Page 3: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

3

¿Qué es la seguridad en el Edge?

3Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Page 4: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

4

package main; import ( "fmt"; "html";"log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMessage struct { Target string; Count int64; }; func main() { controlChannel := make(chan ControlMessage);workerCompleteChan := make(chan bool); statusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChannel,statusPollChannel); for { select { case respChan := <- statusPollChannel: respChan <- workerActive; case msg := <-controlChannel: workerActive = true; go doStuff(msg,workerCompleteChan); case status := <- worker-CompleteChan: workerActive = status; }}}; func admin(cc chan ControlMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this works for THEIR domain */ hostTokens :=strings.Split(r.Host, ":"); if len(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] !=host[len(host)-1-i] { fmt.Fprintf(w, "invalidhostname"); return; }}}; r.ParseForm();count, err := strconv.ParseInt(r.FormValue("count"), 10, 64); if err != nil { fmt.Fprintf(w, err.Error()); return; }; msg := ControlMessage{Target: r.FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for Target %s, count%d", html.EscapeString(r.FormValue("target")), count); }); http.HandleFunc("/status",func(w http.ResponseWriter, r *http.Request)

4

El enfoque de seguridad en el Edge protege el negocio y a los clientes (todos sus usuarios) de las amenazas desplegando las medidas de seguridad más cerca del punto de ataque, y tan lejos como sea posible de sus activos (ya sean personas, aplicaciones o infraestructuras).

El Edge, o borde de Internet, es la ubicación física donde distintos elementos y personas se conectan al mundo digital estructurado en redes. Hace referencia a una topología digital distribuida en la que las experiencias digitales se sitúan cerca de los puntos donde los elementos y las personas producen o disfrutan de esas experiencias.

El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el Edge es una topología o red, donde tienen lugar las experiencias digitales, mientras que la nube es un estilo de computación. Y las experiencias en la nube se están acercando cada vez más al Edge.

La adopción de un enfoque centrado en el Edge reporta a las empresas una mejor interacción digital, una mayor eficiencia y seguridad y, en última instancia, la posibilidad de ahorrar costes y centrar sus recursos en oportunidades de ingresos adicionales.

Aparte de estas ventajas, el cambio también ofrece la oportunidad de renovar la visión de seguridad, más cerca del Edge.

Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Page 5: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

55

Las ventajas de la seguridad en el Edge.

Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Page 6: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

6

package main; import ( "fmt"; "html";"log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMessage struct { Target string; Count int64; }; func main() { controlChannel := make(chan ControlMessage);workerCompleteChan := make(chan bool); statusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChannel,statusPollChannel); for { select { case respChan := <- statusPollChannel: respChan <- workerActive; case msg := <-controlChannel: workerActive = true; go doStuff(msg,workerCompleteChan); case status := <- worker-CompleteChan: workerActive = status; }}}; func admin(cc chan ControlMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this works for THEIR domain */ hostTokens :=strings.Split(r.Host, ":"); if len(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] !=host[len(host)-1-i] { fmt.Fprintf(w, "invalidhostname"); return; }}}; r.ParseForm();count, err := strconv.ParseInt(r.FormValue("count"), 10, 64); if err != nil { fmt.Fprintf(w, err.Error()); return; }; msg := ControlMessage{Target: r.FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for Target %s, count%d", html.EscapeString(r.FormValue("target")), count); }); http.HandleFunc("/status",func(w http.ResponseWriter, r *http.Request)

6

Al ir más allá de los modelos de seguridad tradicionales basados en el perímetro y en dispositivos, los equipos de TI y seguridad tienen la oportunidad de dejar atrás un enfoque de seguridad reactivo para adoptar la innovación: nuevos servicios en la nube, nuevos partners, nuevos modelos de interacción con el cliente... Todo ello a la vez que implementan una protección proactiva más cerca de los usuarios y de las amenazas.

La seguridad integral como servicio en el Edge le permite proteger las aplicaciones, la infraestructura y a los usuarios, del núcleo al Edge.

AplicacionesProteja las aplicaciones y las API, independientemente de si están desplegadas en centros de datos o en la nube pública, con soluciones de firewall de aplicaciones web, protección contra ataques DDoS y gestión de bots.

InfraestructuraAísle y proteja la infraestructura esencial y el tráfico de la con soluciones de protección contra DDoS, acceso seguro a las aplicaciones y protección contra malware.

PersonasDefienda a sus empleados y clientes de las amenazas avanzadas con un sistema de gestión de identidades y protección contra amenazas específicas.

Combine un panorama de amenazas hostil con el uso de controles de seguridad complejos y, en muchos casos, ineficaces, y entenderá por qué un enfoque de seguridad en el Edge sencillo, pero inteligente, es la tendencia del futuro. Los cambios en los requisitos del negocio digital se han traducido en unos sistemas complejísimos, que conllevan un riesgo mayor. Pero este panorama lleno de cambios también les ofrece a los responsables de TI y seguridad la oportunidad de tomar las riendas y aportar nuevos tipos de valor a su organización.

Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Page 7: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

7

7 razones por las que llevar la seguridad al Edge.

7Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Page 8: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

8

package main; import ( "fmt"; "html";"log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMessage struct { Target string; Count int64; }; func main() { controlChannel := make(chan ControlMessage);workerCompleteChan := make(chan bool); statusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChannel,statusPollChannel); for { select { case respChan := <- statusPollChannel: respChan <- workerActive; case msg := <-controlChannel: workerActive = true; go doStuff(msg,workerCompleteChan); case status := <- worker-CompleteChan: workerActive = status; }}}; func admin(cc chan ControlMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this works for THEIR domain */ hostTokens :=strings.Split(r.Host, ":"); if len(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] !=host[len(host)-1-i] { fmt.Fprintf(w, "invalidhostname"); return; }}}; r.ParseForm();count, err := strconv.ParseInt(r.FormValue("count"), 10, 64); if err != nil { fmt.Fprintf(w, err.Error()); return; }; msg := ControlMessage{Target: r.FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for Target %s, count%d", html.EscapeString(r.FormValue("target")), count); }); http.HandleFunc("/status",func(w http.ResponseWriter, r *http.Request)

Teniendo en cuenta la complejidad y los constantes cambios del ecosistema digital de hoy día, es imprescindible contar con una estrategia de seguridad en el Edge adaptable e inteligente que esté diseñada para reducir la superficie de ataque y simplificar los controles de seguridad. La seguridad en el Edge le permite:

8

Los clientes y los usuarios corporativos han ido aumentando sus expectativas hasta el punto de demandar que las interacciones digitales no les supongan ningún esfuerzo; en otras palabras, que no tengan errores y que sean personalizadas y atractivas. Al ser la intersección de la topografía física y la experiencia digital, el Edge ofrece la oportunidad perfecta de proporcionar una mejor experiencia basada en la proximidad, así como las ventajas que esa proximidad ofrece para las interacciones digitales en tiempo real.

Puede proteger las aplicaciones donde estén desplegadas, ya sea en su centro de datos, en la nube o en varias nubes. El enfoque más adecuado para proteger un perímetro en disolución es seguir una estrategia de "defensa en profundidad", por la que se despliegan medidas de seguridad aplicadas desde las aplicaciones y la infraestructura hasta el usuario. La clave de esto es que la seguridad se sitúe entre los usuarios y los posibles atacantes, y bloquear las amenazas rápidamente, antes de que puedan poner en peligro las aplicaciones e infraestructuras.

1 Protegerse de los ataques sin mermar el rendimiento.

2Detener los ataques en el Edge antes de que lleguen a los centros de datos o las aplicaciones.

Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Page 9: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

9

package main; import ( "fmt"; "html";"log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMessage struct { Target string; Count int64; }; func main() { controlChannel := make(chan ControlMessage);workerCompleteChan := make(chan bool); statusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChannel,statusPollChannel); for { select { case respChan := <- statusPollChannel: respChan <- workerActive; case msg := <-controlChannel: workerActive = true; go doStuff(msg,workerCompleteChan); case status := <- worker-CompleteChan: workerActive = status; }}}; func admin(cc chan ControlMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this works for THEIR domain */ hostTokens :=strings.Split(r.Host, ":"); if len(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] !=host[len(host)-1-i] { fmt.Fprintf(w, "invalidhostname"); return; }}}; r.ParseForm();count, err := strconv.ParseInt(r.FormValue("count"), 10, 64); if err != nil { fmt.Fprintf(w, err.Error()); return; }; msg := ControlMessage{Target: r.FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for Target %s, count%d", html.EscapeString(r.FormValue("target")), count); }); http.HandleFunc("/status",func(w http.ResponseWriter, r *http.Request)

9

Si la historia nos ha enseñado algo, es que seguiremos viendo los mismos tipos de ataques de los que hemos sido testigos en los últimos años... pero serán aún mayores. Ejemplos de ello son el ataque de 1,3 Tbps en Memcached, de febrero de 2018, y el ataque Dyn de DNS autoritativo a través de la botnet Mirai, de 2016. Es poco probable que su empresa sea capaz de hacer frente al gran tamaño y volumen de estos nuevos ataques solo con su centro de datos. Si adopta un enfoque centrado en el Edge, podrá detener los ataques gracias a la escala de la plataforma de su proveedor, que tendrá la capacidad de responder a todos los picos de tráfico, ya sean legítimos o maliciosos.

A medida que el perímetro se disuelve, la superficie de ataque se expande. Este perímetro se caracteriza por una creciente migración a la nube empresarial y por los imperativos digitales del negocio, como una estrategia orientada a dispositivos móviles y un back-end cada vez más centrado en las API. Estas tendencias revelan nuevas vulnerabilidades en las aplicaciones y la infraestructura. Si a ello se le suma una distribución de malware continua pero cada vez más sofisticada, los intentos de phishing y el movimiento lateral por la red, las amenazas suponen un peligro mayor que nunca. La seguridad en el Edge se adapta a las nuevas tendencias, se enfrenta a las amenazas más cerca de ellas y las aniquila antes de que puedan penetrar en sus activos esenciales.

Es cada vez más frecuente que sus trabajadores estén fuera de la oficina, y las oportunidades de aportar valor al negocio pueden presentarse en cualquier momento y lugar. La seguridad en el Edge apoya este modelo de negocio, a medida que los usuarios se dispersan y las aplicaciones se despliegan en centros de datos, en la nube pública o en entornos multinube, en cualquier parte del mundo.

3

4

5

Defenderse de ataques a gran escala.

Gestionar una creciente superficie de ataque.

Proteger a todos los usuarios, estén donde estén.

Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Page 10: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

10

package main; import ( "fmt"; "html";"log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMessage struct { Target string; Count int64; }; func main() { controlChannel := make(chan ControlMessage);workerCompleteChan := make(chan bool); statusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChannel,statusPollChannel); for { select { case respChan := <- statusPollChannel: respChan <- workerActive; case msg := <-controlChannel: workerActive = true; go doStuff(msg,workerCompleteChan); case status := <- worker-CompleteChan: workerActive = status; }}}; func admin(cc chan ControlMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this works for THEIR domain */ hostTokens :=strings.Split(r.Host, ":"); if len(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] !=host[len(host)-1-i] { fmt.Fprintf(w, "invalidhostname"); return; }}}; r.ParseForm();count, err := strconv.ParseInt(r.FormValue("count"), 10, 64); if err != nil { fmt.Fprintf(w, err.Error()); return; }; msg := ControlMessage{Target: r.FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for Target %s, count%d", html.EscapeString(r.FormValue("target")), count); }); http.HandleFunc("/status",func(w http.ResponseWriter, r *http.Request)

10

La adopción de una plataforma de seguridad de Edge le permitirá responder a las futuras amenazas. Implemente sin problemas nuevas funciones y soluciones de seguridad conforme vayan estando disponibles y sin necesidad de interrumpir el funcionamiento de su infraestructura de aplicaciones o corporativa. Asimismo, un enfoque centrado en el Edge ofrece una flexibilidad esencial, que permite reajustar la estrategia de seguridad a medida que crece el negocio.

Por último, los equipos de TI y seguridad deben convertirse en un partner para el negocio digital y una figura clave para la empresa, no quedar relegados a un mero centro de costes. La seguridad en el Edge les da la oportunidad de progresar y no estancarse en sus antiguas funciones laborales. Pueden ser mucho más que los que dicen "no" a la innovación: propónganse aportar valor con un enfoque de seguridad integral en el Edge adaptable y proactivo.

6

7

Mitigar futuros riesgos.

Liberar todo su potencial y el de su equipo.

Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet

Page 11: Del núcleo al - Akamai...y las personas producen o disfrutan de esas experiencias. El Edge no reemplaza la nube, sino que, en cierto sentido, la complementa. Podría decirse que el

11

package main; import ( "fmt"; "html";"log"; "net/http"; "strconv"; "strings"; "time" ); type ControlMessage struct { Target string; Count int64; }; func main() { controlChannel := make(chan ControlMessage);workerCompleteChan := make(chan bool); statusPollChannel := make(chan chan bool); workerActive := false;go admin(controlChannel,statusPollChannel); for { select { case respChan := <- statusPollChannel: respChan <- workerActive; case msg := <-controlChannel: workerActive = true; go doStuff(msg,workerCompleteChan); case status := <- worker-CompleteChan: workerActive = status; }}}; func admin(cc chan ControlMessage, statusPollChannel chan chan bool) {http.HandleFunc("/admin", func(w http.ResponseWriter, r *http.Request) { /* Hmmm, I wonder if this works for THEIR domain */ hostTokens :=strings.Split(r.Host, ":"); if len(hostTokens) > 0 { host := hostTokens[0]; for i :=0; i < len(host)/2; i++ { if host[i] !=host[len(host)-1-i] { fmt.Fprintf(w, "invalidhostname"); return; }}}; r.ParseForm();count, err := strconv.ParseInt(r.FormValue("count"), 10, 64); if err != nil { fmt.Fprintf(w, err.Error()); return; }; msg := ControlMessage{Target: r.FormValue("target"), Count: count}; cc <- msg; fmt.Fprintf(w, "Control message issued for Target %s, count%d", html.EscapeString(r.FormValue("target")), count); }); http.HandleFunc("/status",func(w http.ResponseWriter, r *http.Request)

Akamai, la plataforma de distribución en la nube más grande y respetada del mundo, ayuda a sus clientes a

ofrecer las mejores y más seguras experiencias digitales, independientemente del dispositivo, en cualquier

momento y en cualquier lugar. La plataforma ampliamente distribuida de Akamai ofrece una escala inigualable

para garantizar a sus clientes el máximo rendimiento y protección frente a las amenazas. La cartera de

soluciones de rendimiento web y móvil, seguridad en la nube, acceso empresarial y distribución de vídeo de

Akamai está respaldada por un servicio de atención al cliente excepcional y una supervisión ininterrumpida

durante todo el año. Para descubrir por qué las principales instituciones financieras, líderes de comercio

electrónico, proveedores de contenidos multimedia y de entretenimiento, y organizaciones gubernamentales

confían en Akamai, visite www.akamai.com, blogs.akamai.com, o siga a @Akamai en Twitter. Publicado en

febrero de 2019.

1111

El futuro plantea nuevos retos, como el número creciente de amenazas desarrolladas por atacantes persistentes, ataques a gran escala, bots sofisticados, malware cada vez más avanzado y la disolución del perímetro empresarial, para los que no bastará una estrategia de seguridad perimetral, concepto que ha quedado más que anticuado. La respuesta está en un enfoque de seguridad en el Edge, que apoyará la transformación digital de su empresa y brindará la máxima protección a sus recursos más valiosos.

Conclusión

Del núcleo al borde de Internet: 7 razones por las que necesita la seguridad en el borde de Internet