De ce și cum să securizați Endpoint-ul API?

Cum vă asigurați API-ul?


Este vârsta exploziei economiei digitale și sunt încărcate masive de date prin API-uri. Afaceri, jocuri, educație, știință, arte. . . îl numești, totul funcționează pe API-uri. Pentru o lume atât de fundamentală bazată pe API-uri, se concentrează surprinzător de puțin asupra securității.

Pentru dezvoltatori, valorile prestabilite ale cadrelor lor sunt suficiente; sau chiar mai rău, când nu sunt utilizate cadre, ei cred că urmează practici sigure. Pentru administratorii de sistem, securitatea implicită oferită de infrastructura sau furnizorul de servicii este pe care se bazează.

Nu este deloc o vedere frumoasă, dacă mă întrebați.

Sursa: dezvoltator.ibm.com

Inutil să spun, sunt multe în joc, pe care le realizăm doar atunci când este ceva cu adevărat îngrozitor se întâmplă.

Dar primele lucruri în primul rând. ��

De ce securizați punctele finale ale API?

Acest lucru trebuie să fie fără creier, nu? Trebuie să asigurăm obiective finale, deoarece, de asta, depinde afacerea.

Deși acesta este un argument suficient de puternic în sine, vreau să extind puțin punctul de vedere și să subliniez alte consecințe legate, dar la fel de mortale,.

Pierderea afacerii

Aceasta este cea evidentă. Dacă cineva reușește să încurce cu obiectivele API-ului dvs., totul va duce la încetarea. Încălcările de securitate pot dura, de asemenea, mult timp pentru a se recupera, ceea ce se traduce prin sinucidere în termeni de afaceri. Deși este adevărat că majoritatea întreprinderilor probabil nu vor fi afectate de o oră sau două de oprire, pentru unele nu este permis..

Imaginați-vă că un schimb valutar este în scădere pentru câteva minute!

Probleme de conformitate

Neasigurarea corectă a API-urilor dvs. vă poate pune în dificultate gravă, în funcție de geografiile sau industriile cu care vă confruntați. De exemplu, dacă sunteți în serviciul industriei bancare (în special în UE), costul de a fi descoperit servind API-uri nesigure va duce la probleme de ordin juridic și de conformitate. Atât de mult, încât s-ar putea chiar vrăji sfârșitul afacerii tale.

Pierderea reputației

A fi hacked este destul de dureros în sine, dar dacă veștile apar în public, va fi o pierdere irecuperabilă pentru imaginea mărcii tale. De exemplu, Sony a fost hacked foarte prost de câteva ori până acum, iar în cercurile de securitate, compania este o obiect ale batjocurii de feluri.

Chiar dacă nu există nicio pierdere reală de date sau bani, noroc încearcă să-i convingi pe clienții tăi. ��

Facturi de infrastructură umflate

Când API-ul dvs. rulează pe o infrastructură, consumă resurse (lățime de bandă, procesor și memorie, mai ales). De exemplu, în cazul în care API-ul nu este securizat în mod corespunzător și persoanele străine rău intenționate pot interacționa cu acesta, este posibil ca aceștia să forțeze API-ul să continue o mulțime de lucrări inutile (rularea unor interogări grele de baze de date, de exemplu), ceea ce poate genera facturile dvs. din motive.

Pe platformele în care scalarea automată a resurselor este activată (cum ar fi AWS), rezultatele pot fi șocante (în afara subiectului, dar dacă veți fi prins vreodată de o supă de genul acesta pe AWS, ei înțeleg destul de bine situația și renunță imediat la factura umflată – cel puțin în scris!).

Moralul echipei

Deci, s-ar putea să vă gândiți, echipa care lasă aceste compromisuri să se întâmple va pierde moralul asupra lor? Ei bine, nu chiar. Este posibil ca compromisurile să se datoreze securității infrastructurii slabe, ceea ce îi va descuraja pe dezvoltatori sau invers.

În cazul în care acest lucru se va întâmpla suficient de mult, vei avea o cultură pe mâini pe care vei regreta că ai permis să te dezvolți.

Câștigurile concurentului

Să zicem că a existat o încălcare, dar nu a existat nicio pierdere reală. Cu toate acestea, concurenții dvs. vor folosi incidentul pentru a-și extrage propria API și vor afirma cât de mult este mai sigur al lor (chiar dacă nu!). Încă o dată, noroc încercând să convingă piața. ��

În total, există consecințe asupra încălcărilor de securitate care depășesc pierderea banilor.

Cele mai bune practici pentru securizarea obiectivelor API

Din fericire, există anumite practici ușor de implementat și bine înțeles pe care le puteți aplica la punctele de bază ale API-ului dvs. pentru securizarea acestora. Iată ce recomandă majoritatea experților în securitate.

HTTPS întotdeauna

Dacă punctele tale finale API permit consumatorilor API să vorbească prin http sau alte protocoale non-sigure, le expui unui risc mare. Parolele, cheile secrete și informațiile despre cardurile de credit pot fi furate cu ușurință ca oricare dintre acestea atac de om în mijloc sau instrumentul de sniffer de pachete le poate citi ca text simplu.

Deci, faceți întotdeauna https singura opțiune disponibilă. Oricât de banal ar părea un punct final, conectarea prin http nu ar trebui să fie chiar o opțiune. Certificatul TLS nu costă mult, puteți cumpăra prețuri de până la 20 USD Magazin SSL.

Hashing cu parolă unidirecțională

Parolele nu trebuie niciodată stocate ca text simplu, deoarece în cazul în care se produce o încălcare a securității, toate conturile de utilizator vor fi compromise. În același timp, criptarea simetrică trebuie evitată strict, deoarece orice atacator suficient de ingenios și persistent va putea să le rupă.

Singura opțiune sugerată este algoritmii de criptare asimetrici (sau „unidirecționali”) pentru stocarea parolelor. În acest fel, nici un atacator, nici un dezvoltator sau sysadmin din cadrul companiei nu vor putea citi parolele clienților.

Autentificare puternică

Acum, aproape fiecare API are o formă de autentificare, dar în opinia mea, sistemul OAuth2 funcționează cel mai bine. Spre deosebire de alte metode de autentificare, împarte contul în resurse și permite accesul limitat la purtătorul de jetoane de autentificare.

În același timp, o altă practică foarte bună pentru a seta jetoane să expire fiecare, să zicem, 24 de ore, astfel încât acestea să fie reîmprospătate. În acest fel, chiar și simbolul tău este scurs, există șansa ca termenul limită de 24 de ore să reducă impactul încălcării.

Aplicați limitarea ratei

Dacă nu aveți o API folosită de milioane de oameni în fiecare minut, este foarte bună să aplicați o limită a numărului de apeluri pe care un client le poate face către API într-o fereastră de timp dată..

Acest lucru este cel mai ales pentru a descuraja roboții, ceea ce poate continua să trimită sute de solicitări simultane în fiecare secundă și să facă ca API-ul dvs. să mănânce resursele sistemului fără niciun motiv bun. Toate cadrele de dezvoltare web sunt dotate cu un middleware de limitare a ratelor (și, dacă nu, este destul de ușor să îl adăugați prin intermediul unei biblioteci) care necesită doar un minut pentru a configura.

Validați intrarea

Acest lucru pare a fi fără creier, dar veți fi surprins de numărul de API-uri care se încadrează în acest sens. Validarea intrării nu înseamnă doar verificarea dacă datele primite sunt într-un format corect, dar și că nu sunt posibile surprize. Un exemplu simplu este injecția SQL, care vă poate șterge bazele de date dacă lăsați șirurile de interogare să nu se verifice puțin sau fără.

Un alt exemplu este validarea dimensiunii cererii POST și returnarea unui cod de eroare și a unui mesaj adecvat clientului. Încercarea de a accepta și analiza intrări ridicol de mari va servi doar pentru a exploda API-ul.

Aplicați filtrarea adreselor IP, dacă este cazul

Dacă sunteți în serviciile B2B și API-urile dvs. sunt utilizate de companii din locații setate, având în vedere adăugarea unui strat suplimentar de securitate care restricționează adresa IP care poate accesa API-ul dvs. Pentru fiecare locație nouă și clienți noi, adresa IP va trebui să fie verificată în funcție de cererea primită.

Da, aduce un plus de neplăceri la bord, dar rezultatul final este o securitate mult mai strictă decât se poate obține altfel.

Instrumente pentru creșterea protecției API

Există instrumente care ne pot ajuta să scanăm vulnerabilitatea, sau chiar mai bine, care oferă prima linie de apărare când vine vorba de securizarea API-urilor.?

Din fericire, da. Există mai multe instrumente pe care le puteți folosi, dar aveți atenție că la sfârșitul zilei nici o strategie de securitate nu este perfectă. Acestea fiind spuse, aceste instrumente pot spori securitatea API-ului de mai multe ori, așa că sunt recomandate.

Metasploit

Metasploit este un cadru open source extrem de popular pentru testarea penetrării aplicațiilor web și API-urilor. Acesta poate scana API-ul dvs. pe mai mulți parametri diferiți și poate face un audit de securitate exhaustiv pentru diferite niveluri de vulnerabilități prezente.

De exemplu, scanarea de securitate realizată de Metasploit vă poate spune dacă semnăturile dvs. API oferă sau nu tehnologiile de bază și sistemul de operare; ascunderea aceasta este adesea jumătate din bătălia câștigată în securitatea API.

În timp ce cadrul de bază open source este suficient în general, există produse plătite excelente, construite pe baza Metasploit, care merită să fie privite. Planul pro este excelent dacă doriți sprijin premium și va folosi cadrul în profunzime, dar în general nu este necesar dacă echipa dvs. are suficientă experiență.

Cloudflare

Nu doar CDN, ci Cloudflare oferă o mulțime de caracteristici de securitate precum WAF, limitarea ratei, protecția DDoS, care va fi esențială pentru protejarea API-ului dvs. împotriva amenințărilor online.

Netsparker

Netsparker vine cu un USP de „scanare bazată pe dovezi”. În termeni mai simpli, este adesea posibil ca condițiile de rețea neregulate sau unele comportamente API mai puțin cunoscute să fie interpretate ca lacune de securitate, care ulterior s-au dovedit a fi greșite.

Aceasta risipește resurse, deoarece toate vulnerabilitățile raportate trebuie scanate din nou manual pentru a confirma că nu sunt false. Netsparker spune că instrumentul este capabil să vă ofere o dovadă de concept suficient de puternică pentru rapoarte, eliminând îndoielile cu privire la linkurile slabe găsite.

Cu companii precum Sony, Religare, Coca-Cola, Huawei etc., pe lista de clienți, puteți fi sigur că acești oameni fac ceva corect. �� Apropo, au și un incredibil blog de securitate web pe care ar trebui să-l urmezi.

SoapUI Pro

Construit de SmartBear, SoapUI Pro este un mod intuitiv și ușor de a crea teste API și de a obține rapoarte precise, bazate pe date. De asemenea, se integrează perfect cu conducta CI / CD, asigurându-vă că nicio adăugare de coduri noi nu compromite securitatea API-ului dvs..

SoapUI este capabil să lucreze cu Swagger, OAS și alte standarde API populare, reducând semnificativ timpul pentru a începe. Cu clienți precum Microsoft, Cisco, MasterCard, Oracle, etc. și planifică începând de la 659 USD pe an, acesta este un instrument demn pentru API-uri mai sigure.

Trustwave

Trustwave este o suită de soluții centrate în jurul scanării și întăririi securității. Unul dintre lucrurile unice despre acest serviciu este că nu numai că efectuează detectarea precisă a amenințărilor pe API-ul dvs., dar vă ajută să înțelegeți cum să le remediați.

Trustwave realizează ceea ce numește scanare conștientă de context, ceea ce înseamnă că, odată detectat un sistem de operare sau o infrastructură de bază, serviciul efectuează o serie de verificări aferente pentru a vă asigura că nu sunt prezente găuri de securitate asociate cu acea platformă..

De asemenea, se laudă cu o echipă puternică de cercetători în domeniul securității, care actualizează continuu capacitățile serviciului. Dacă vă conformați foarte mult, Trustwave este o soluție bună.

Dacă sunteți la număr și doriți să vă bucurați de funcții, cum ar fi răspunsul la amenințări, reluarea cu un singur clic a testelor după remedieri, etc.!

Există nu lipsesc a instrumentelor de securitate API disponibile pe piață, fie că este open source, gratuit sau comercial sau orice combinație a acestora. Simțiți-vă liber să explorați mai multe și, dacă găsiți ceva și mai bun, vă rugăm să scrieți în comentarii și voi fi fericit să o includ! ��

ETICHETE:

  • API-ul

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map