From 7a128df475d0c8732bb89214657d984ba6d35d5c Mon Sep 17 00:00:00 2001 From: Ane Diaz de Tuesta Date: Thu, 18 Mar 2021 07:54:20 +0100 Subject: [PATCH] [FEAT] Basque translation: 6.12 subsection translation --- README.basque.md | 2 +- sections/security/expirejwt.basque.md | 2 +- sections/security/login-rate-limit.basque.md | 46 ++++++++++++++++++++ 3 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 sections/security/login-rate-limit.basque.md diff --git a/README.basque.md b/README.basque.md index 7e10cd1f..983c461f 100644 --- a/README.basque.md +++ b/README.basque.md @@ -903,7 +903,7 @@ edo hornitzaileen lainoko zerbitzuak **Bestela:** erasotzaile batek pasahitz automatizatuen saiakera mugagabeak egin ditzake aplikazio bateko kontu pribilegiatuetara sartzeko -🔗 [**Gehiago irakurri: saioa hasteko saiakera kopurua mugatzea**](/sections/security/login-rate-limit.md) +🔗 [**Gehiago irakurri: mugatu saioa hasteko abiadura**](/sections/security/login-rate-limit.md)

diff --git a/sections/security/expirejwt.basque.md b/sections/security/expirejwt.basque.md index 5ba78362..2d5589af 100644 --- a/sections/security/expirejwt.basque.md +++ b/sections/security/expirejwt.basque.md @@ -40,5 +40,5 @@ app.get('/logout', (req, res) => { ### Beste blogari batzuek diotena -[Marc Busqué](http://waiting-for-dev.github.io/blog/2017/01/25/jwt_secure_usage/)ren bloga: +[Marc Busqué](http://waiting-for-dev.github.io/blog/2017/01/25/jwt_secure_usage/)-ren bloga: > ...gehitu baliogabetze geruza bat JWTri, izaera apatrida galtzea suposatzen badu ere. diff --git a/sections/security/login-rate-limit.basque.md b/sections/security/login-rate-limit.basque.md new file mode 100644 index 00000000..1a2fa618 --- /dev/null +++ b/sections/security/login-rate-limit.basque.md @@ -0,0 +1,46 @@ +# Saihestu baimenaren aurkako eraso basatiak + +### Azalpena + +`/login` edo `/admin` bezalako pribilegio handiko ibilbideak abiadura mugarik gabe utziz gero, aplikazioko pasahitzen hiztegiak eraso basatiak izateko arriskua sortzen da. Eskaerak ibilbide horietara mugatzeko estrategia erabiltzen baduzu, erasoek arrakasta izatea saihestu dezakezu, baimen saiakeren kopurua mugatuz, IP bezalako eskaera propietate edo erabiltzaile izena/helbide elektronikoa bezalako gorputz parametroan oinarrituta. + +### Kode adibidea: zenbatu jarraian huts egin duten baimen saiakerak erabiltzaile izenaren eta IP bikotearen arabera, eta guztira izandako hutsegiteak IP helbidearen arabera. + +Erabili [rate-limiter-flexible](https://www.npmjs.com/package/rate-limiter-flexible) npm paketea. + +Sortu bi mugatzaile: + +1. Lehenengoak jarraian huts egindako saiakera kopurua zenbatzen du eta, gehienez, 10 saiakera baimentzen ditu erabiltzaile izenaren eta IP bikotearen arabera. +2. Bigarrenak eguneko IP helbidea blokeatzen du egunean 100 huts egin dituen saiakeretan. + +```javascript +const gehienekoIPbakoitzekoEtaEgunekoSaiakeraOkerrak = 100; +const gehienekoIPbakoitzekoEtaErabiltzaileIzenekoJarraiekoSaiakeraOkerrak = 10; + +const IPbakoitzekoMugatzaileAstiroa = new RateLimiterRedis({ + storeClient: redisClient, + keyPrefix: "erregistratu_eguneko_huts_egindako_ipak", + points: gehienekoIPbakoitzekoEtaEgunekoSaiakeraOkerrak, + duration: 60 * 60 * 24, + blockDuration: 60 * 60 * 24, // Egun baterako blokeatu, baldin eta eguneko 100 saiakera oker +}); + +const IPbakoitzekoEtaErabiltzaileIzenekoJarraiekoSaiakeraOkerrenMugatzailea = new RateLimiterRedis( + { + storeClient: redisClient, + keyPrefix: "erregistratu_jarraieko_huts_egindako_erabiltzaileizen_eta_ipak", + points: gehienekoIPbakoitzekoEtaErabiltzaileIzenekoJarraiekoSaiakeraOkerrak, + duration: 60 * 60 * 24 * 90, // Gorde kopurua 90 egunean zehar lehenengo huts egitetik + blockDuration: 60 * 60, // Ordubeterako blokeatu + } +); +``` + +Ikusi adibide osoa [rate-limiter-flexible npm package paketearen Wikian](https://github.com/animir/node-rate-limiter-flexible/wiki/Overall-example#login-endpoint-protection). + +### Beste blogari batzuek diotena + +[Liran Tal](https://leanpub.com/nodejssecurity)-en Essential Node.js segurtasun liburua: + +> Erasotzaileek eraso basatiak egin ditzakete erabiltzaileen izen/pasahitz bikoteak zure REST amaierako puntuetara bidaltzeko, POST edo haiek inplementatzeko ireki duzun beste RESTful API baten bidez. +> Hiztegi eraso mota hori oso erraza da egikaritzen, eta zure APIaren edo orri bideraketaren beste edozein ataletan egin daiteke, saioa hastearekin zerikusirik izan gabe ere.