Kipakiaji wa Faili

Kwanini Upakuaji wa Faili Una Hatari?

Utaratibu wa kupokea faili kutoka kwa watumiaji ni rahisi, lakini ikiwa haujaundwa vizuri inaweza kuwa na udhaifu mkubwa. Wavamizi wanaweza kutumia upakuaji vibaya ili kutekeleza msimbo wa kibinafsi, kuzuia uwezo wa seva, au kusambaza faili zisizofaa.

Hatari maarufu ni kama ifuatavyo:

  • Kupakua/kutekeleza Msemaji wa Mtandao — Kupakua skripti zenye nia mbaya ili kufanya udhibiti wa mbali.
  • Faili zenye Programu Hasidi — Kueneza maambukizi kwa watumiaji wengine.
  • Upitaji wa Njia — Faili zinahifadhiwa mahali pasipo na makusudi kutokana na uainishaji mbaya wa njia.
  • DoS (Mlipuko wa ZIP, Faili kubwa) — Kuzuia uwezo wa kuhifadhi na uchakataji.
  • Ushaguzi wa Ugani/MIME — Kupita kupitia ugani wa faili wa aina mbili kama .jpg.php au kubadilisha Content-Type.
  • XSS kupitia Matone ya Taswira — Skripti zinaweza kutekelezwa wakati waonyesha taswira za SVG/HTML.

Msingi wa mbinu za kujikinga ni "Ulinzi wa Mifereji (defense in depth)". Usitegemee mbinu moja, badala yake, ubuni safu nyingi za ulinzi.

Mifano ya Kukabiliana: Kanuni za Kubuni za Kuzingatia

Uchambuzi Mkali wa Mifano & MIME (Njia ya Orodha ya Kijani)

Panua mifano inayoruhusiwa pekee, na usikubali faili zinazokubalika kutokana na ugani pekee. Thibitisha saini ya faili (nambari ya uchawi) ili kuthibitisha yaliyomo. Usitegemee kichwa cha Content-Type, na thibitisha njia za kukwepa kama ugani wa mbili au byte ya NULL.

Ulinzi wa Majina ya Faili na Upya wa Ujumbe

Usihifadhi jina la faili kama lilivyo kutoka kwa mtumiaji. Badilisha kuwa jina la kipekee kwa kutumia UUID au hash pamoja na alama ya wakati, na uhifadhi jina la faili la asili kama metadata kupitia mbinu salama. Punguza wahifadhi wa herufi maalum na mipaka ya urefu.

Mahali Pa Kuhifadhi na Udhibiti wa Ruhusa

Faili zilizopakuliwa zinapaswa kuhifadhiwa nje ya eneo la wavuti ili isitekelezeke moja kwa moja. Ikiwezekana, uhifadhi kwenye hifadhi ya vifaa maalum (mfano: S3) na utoe kiungo cha kupakua kupitia programu. Hakikisha folda ya uhifadhi haipati ruhusa ya kutekeleza na kuweka ruhusa ya kusoma/kkuandika kuwa ndogo iwezekanavyo.

Ukubwa wa Kizuizi na Udhibiti wa Upakuaji wa Wakati Moja

Seti mipaka ya ukubwa wa faili, na tengeneza udhibiti wa idadi ya upakuaji wa wakati mmoja na kiwango cha upakuaji ili kuthibitisha upatikanaji wa huduma. Ikiwa unakubali faili za kupakia (kama ZIP), hakikisha unakaguliwa kila faili baada ya kupakiwa.

Skani ya Programu Hasidi na Uondoaji wa Maudhui (CDR)

Fanya skani ya virusi mara tu baada ya kupakua (ikiwezekana kwa injini kadhaa) na kufanyia maudhui kuwa salama kwa kutumia CDR (Kujitoa na Kujenga Tena). Picha zimefanyiwa upya kwa kupanga (kujaza → kuunda faili mpya) ili kuondoa data haramu iliyojumuishwa na inafaa.

HTTPS / Ulinzi wa Mawasiliano & Msingi wa CSRF

Wasiliano lazima ihifadhiwe kwa TLS (HTTPS) na iwe na hatua za CSRF kama vile mkataba wa CSRF. Jibu la kupakua linapaswa kuwa na Content-Disposition: attachment na X-Content-Type-Options: nosniff ili kuzuia makosa ya kivinjari.

Rekodi na Mfumo wa Ukaguzi wa Arifa

Tafuta ni nani, lini, na faili zipi ambazo zilihusika kwa kuandika kwa kina rekodi, na weka arifa kwa tabia zisizo kawaida (upakuaji wa mara kwa mara au idadi kubwa ya kukataa). Kuhifadhi hash pia ni muafaka kwa uthibitishaji wa faili.

Jaribio la Udhaifu & Jaribio la Uvunjaji

Baada ya kutekeleza, fanya jaribio maalum la udhaifu kwa upakuaji wa faili (kuingiza shell, kuepuka ugani, upitaji wa njia, nk) na uhakiki marahaba kwa muda.

Mtazamo kwa Mfano wa UploadF

Pale tunapozungumzia UploadF (uploadf.com), inatoa ushirikiano wa kompyuta na simu, kuburuta na kuacha, na kupakuzi mara 100 ya wakati mmoja, ambayo ni rahisi, lakini kuna alama na mikakati inayoweza kuchukuliwa katika kubuni ya huduma.

Orodha ya Kuangalia ya Kutekeleza (Mtazamo wa Usalama)

Hatua za Kuangalia Maelezo ya Kufanya/Kuthibitisha
Uchaguzi wa Orodha ya Kijani Ruhusu mifano muhimu pekee. Tumia orodha ya kuzuia kama njia ya nyongeza.
Uchambuzi wa MIME/Uthibitishaji wa Saini Thibitisha kuwa ugani wa faili unashtakia na yaliyomo (thibitisha nambari ya uchawi).
Rekebisha majina ya faili Badilisha kuwa UUID au jina la hash na uhifadhi jina halisi kwa metadata.
Ondoa herufi maalum Ondoa au kataza `/, \, .., NULL` na kadhalika.
Mahali pa kuhifadhi faili Hifadhi nje ya eneo la wavuti au kwenye hifadhi ya vifaa.
Ruhusa za folda Zilazimisha zilizokatazwa, ruhusa za chini za kusoma/kandika (kanuni ya ruhusa ndogo).
Ukubwa wa faili mkubwa na mdogo Thibitisha mipaka na ukaguzi baada ya kunyoosha kwa ZIP au nyingine.
Udhibiti wa upakuaji wa wakati mmoja Thibitisha udhibiti wa idadi ya upakuaji, kiwango cha upakuaji, na mipangilio ya muda.
Skani ya virusi/CDR Fanya skani mara moja ya upakuaji na upaishwa ya vikwazo inapohitajika.
Usimbaji wa mawasiliano (HTTPS) Fanya TLS kuwa lazima (kuwalinda dhidi ya mashambulizi ya mtu wa katikati).
Msingi wa CSRF Ingiza udhibiti wa msingi wa token.
Mipangilio ya kichwa cha jibu Ongeza Content-Disposition: attachment, X-Content-Type-Options: nosniff, n.k.
Rekodi za kumbukumbu na arifa Angalia vitendo vya upakuaji na arifu kwa hali zisizo za kawaida.
Mapitio ya usalama ya mara kwa mara Tekeleza jaribio la udhaifu na uvunjaji mara kwa mara.
Kuondoa faili za zamani kiotomatiki Ubuni usimamizi wa uondoaji wa kamili baada ya muda wa kuhifadhi kupita.
Udhibiti wa ufikiaji/ruhusa Simamia ruhusa kwa ajili ya watumiaji au vikundi kwa makini.

Muhtasari na Mtazamo wa Watumiaji

Fanya kazi ya upakuaji wa faili inashikilia faida na hatari. Kwa kudumu kuingiza ulinzi wa safu nyingi (orodha ya kijani, uchambuzi wa saini, kutenganisha maeneo, hatua za kujikinga dhidi ya programu hasidi, ukaguzi wa kumbukumbu, n.k.) hatari za shambulio zitapungua kwa kiasi kikubwa.

Ni muhimu kwa watumiaji kuhisi "ni rahisi kutumia, na pia ni salama". Kwa mfano, huduma kama UploadF (uploadf.com) inayo huduma za usimamizi kama uondoaji binafsi na mipangilio ya muda wa kuhifadhi, itawapa watumiaji hisia ya usalama.

Vyanzo na Vitabu vya Rejeleo (Sehemu Moja)

  1. OWASP — Karatasi ya Hadaa za Upakuaji wa Faili
  2. OPSWAT — Ulinzi wa Upakuaji wa Faili / Mifano Bora
  3. PortSwigger — Udhaifu wa Upakuaji wa Faili
  4. Taasisi ya SANS — Mwongozo wa Usalama wa Upakuaji wa Faili
  5. UploadF (uploadf.com) — Msemaji wa Upakuaji wa Faili (Tovuti ya Kukuza)

※ Hii ni mifano ya vyanzo vilivyonukuliwa wakati wa kuandika makala. Tafadhali angalia nyaraka rasmi kwa maelezo ya kina ya utekelezaji na habari za hatari ya hivi karibuni.


Mwanzo   Msaada   Mawasiliano   🌐Language  
©Kipakiaji wa Faili