Object Pascal (Delphi) je bezpečný jazyk

Bezpečnostní agentury vydaly doporučení vyhnout se použití C/C++ a dalších „memory unsafe“ jazyků, protože přispívají k potenciálnímu narušení bezpečnosti. Zpráva obsahuje spíše pokyny a doporučení než závazná pravidla, zejména pro výrobce softwaru, kteří pracují na kritické infrastruktuře nebo národních kritických funkcích. Agentury konkrétně vyzdvihly on-premise software, cloudové služby a software-as-a-service.

I když není přímo uvedeno, že používání „nebezpečných“ jazyků by mohlo diskvalifikovat výrobce z vládní práce, a zpráva je „nezávazná“, poselství je jasné: Takové praktiky jsou nevhodné pro jakoukoli práci klasifikovanou jako relevantní pro národní bezpečnost.

„Dodržováním doporučení v těchto pokynech výrobci signalizují zákazníkům, že přebírají odpovědnost za výsledky zabezpečení zákazníků, což je klíčový princip Secure by Design,“ uvádí zpráva.

Programovací jazyky nebezpečné pro paměť představují potenciální nedostatky
Zpráva popisuje jazyky nebezpečné pro paměť jako „nebezpečné a významně zvyšují riziko pro národní bezpečnost“. Vývoj v jazycích nebezpečných pro paměť je první praxí, kterou zpráva zmiňuje.

Bezpečnost paměti je tématem diskusí nejméně od roku 2019. Jazyky jako C a C++ „poskytují velkou svobodu a flexibilitu ve správě paměti a zároveň se do značné míry spoléhají na programátora, aby provedl potřebné kontroly odkazů na paměť,“ uvádí zpráva NSA z roku 2023 o bezpečnosti paměti. Zpráva však pokračuje, že tyto jazyky postrádají inherentní ochranu paměti, která by zabránila problémům se správou paměti. Aktéři hrozeb mohou zneužít problémy s pamětí, které mohou v těchto jazycích nastat.

Dokument obsahuje „Plán zabezpečení paměťových operací“ pro existující produkty napsané v potenciálně „paměťově nebezpečných jazycích, který „by měl nastínit prioritní přístup výrobce k odstranění zranitelností zabezpečení paměti v prioritních komponentách kódu“.
Výrobci by případně měli používat jazyky které byly vyhodnocené jako bezpečné. Mezi paměťově bezpečné agenturou NSA schválené jazyky patří:

  • Python
  • Java
  • C#
  • Go
  • Delphi/Objekt Pascal
  • Swift
  • Ruby
  • Rust
  • Ada

Zdroj: https://www.techrepublic.com/article/cisa-fbi-memory-safety-recommendations