Clang ka në plan të shtojë një mod të forcuar të sigurisë.

Aaron Ballman, kryesiguesi i kompajlerit Clang dhe pjesëtar i skuadrave të zhvillimit të standardeve WG21 (C++) dhe WG14 (C), nisi diskutimin mbi shtimin e një mode sigurie në kompajlerin Clang. Ky mod do të lejojë aktivizimin e një grupi opsionesh për forcimin e mbrojtjes ngjashëm me flamurin e shtuar në GCC 14 "-fhardened", i cili përfshin opsionet "-D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS -ftrivial-auto-var-init=zero -fPIE -pie -Wl,-z,relro,-z,now -fstack-protector-strong -fstack-clash-protection -fcf-protection=full".

Vlen të theksohet se aktualisht po punohet për shtimin e mundësive për forcimin e sigurisë në standardet C dhe C++, por ky proces nuk është i shpejtë, duke pasur parasysh se në Clang tashmë janë të disponueshme opsione të veçanta me implementim të mekanizmave të tjerë të mbrojtjes. Metodat e implementuara të mbrojtjes shpesh shkaktojnë moskoordinime me kodin ekzistues ose shkelje të ABI, që nuk e lejon aktivizimin e tyre si parazgjedhje. Përveç kësaj, këto opsione janë të shpërndara (flamuj për menaxhimin e kompajlimit, flamuj të gjenerimit të instruksioneve makinerike të lidhura me arkitekturën hardware, paralajmërime, moda diagnostike, makros), të dokumentuara dobët dhe shpesh i shpëtojnë vëmendjes së zhvilluesve.

NjĂ« konfigurim i mbledhur do tĂ« unifikojĂ« aktivizimin e opsioneve qĂ« lidhen me sigurinĂ« dhe do tĂ« thjeshtojĂ« aplikimin e tyre. Po shqyrtohen disa mundĂ«si pĂ«r tĂ« aktivizuar modus e forcimit tĂ« sigurisĂ«, pĂ«r shembull, Ă«shtĂ« nĂ« diskutim aktivizimi pĂ«rmes flamurit "-fhardened", grupit tĂ« konfigurimeve "—config=hardened", njĂ« drejtues tĂ« veçantĂ« (clang —driver-mode) ose opsioneve tĂ« ndara "-fhardened, -mhardened dhe -Whardened", tĂ« lidhura me kompajlimin, gjenerimin e kodit dhe daljen e paralajmĂ«rimeve. Modusi mund tĂ« pĂ«rfshijĂ«:

  • AftĂ«sitĂ« e kompajlerit: -ftrivial-auto-var-init, -fPIE, -fcf-protection etj.
  • AftĂ«si tĂ« lidhura me gjenerimin e kodit pĂ«r platformat qĂ«llimore: -mspeculative-load-hardening, -mlvi-hardening etj.
  • ParalajmĂ«rime: -Wall, -Wextra, -Werror=return-type etj.
  • Mode tĂ« forcimit tĂ« sigurisĂ« nĂ« bibliotekĂ«n standarde tĂ« funksioneve.
  • Makros: _FORTIFY_SOURCE, _GLIBCXX_ASSERTIONS etj.
  • KĂ«rkesĂ« pĂ«r zgjedhjen e qartĂ« tĂ« standardit tĂ« gjuhĂ«s nĂ« pĂ«rdorim.
  • Refuzimi pĂ«r tĂ« kompajluar kodin duke pĂ«rdorur standardet e vjetra C89 dhe C++98.
  • Kalimi i flamujve tĂ« tjerĂ« nĂ« lidhĂ«s, pĂ«r shembull, pĂ«r tĂ« aktivizuar randomizimin e adresave.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster