αααα»αα’αααααααΆαααααΆαααααΈ ETH Zurich, Vrije Universiteit Amsterdam αα·α Qualcomm ααΆαα ααααααΆααα·ααΈααΆαααααααΆααααα αΆα RowHammer ααααΈαααα’αΆα ααααΆααααααΌαααΆαα·ααΆααα’αααα αα αΆαα αΌαααααΎαααΆαα ααααααααα ααααα (DRAM) αα½αα ααα½αα ααΆαααΆααααα αΆααααααααΌαααΆαααααΆαααααααααΆ Blacksmith α αΎαααααΌαααΆααααααααΆ CVE-2021-42114α αααααααΈα DDR4 ααΆα αααΎααααααααΆαααααααΆαααΆαααΆααααααΆααααΉααα·ααΈααΆαααααααααΆαα RowHammer αααααααΆααααααΆααααΈαα»αααΊααΆαααΉαααΆααααα αΆα α§ααααααααααΆααααΆαααααααααααααααααα’ααααααααΆααααΆαααΆααααααααααααΌαααΆαα ααααααΆααα ααΎ GitHub α
ααΌαα αΆαααΆ ααΆαααΆααααα αΆααααα RowHammer class α’αα»ααααΆαα±ααα’ααααααααααααααΉαααΆαααα’αααα αα αΆαααΈαα½αααααααΆαα’αΆααα·ααααααααΆααααααααΈαααα·ααΆα’αααα αα αΆααα·αααΆαα αααααΆαα’αααα αα αΆα DRAM ααΊααΆα’αΆααααΈααα·ααΆααααααααα·ααΆ αααααΈαα½ααααΆα capacitor αα·α transistor ααααΎαααΆαα’αΆαααΆαααααααααΆαααααααααα’αααα αα αΆαααΌα ααααΆ αααααΆαα±ααααΆαααΆααααααααα½αααα»α αα·αααΆααα·αααααααΆααααααααΆαα±ααααΆαααααααααα»αααΌα αα½ααα αααα»ααααα·ααΆαα·αααΆαα ααααα·αααΎα’αΆααααααααΈααααααΆαα’αΆαααααα ααααααα‘αΆααααα αα·αααΆαα’αΆα ααΆαααααααααα»αα αααΎααααααααααΆαα α αΎαααααααααΆααααααΎαα‘αΎααα·ααααααΆααααΉααα·αααΆααααααααΆααΎααααΈααααΆαααααΆαααΆαααΎαααααααΆα‘αΎααα·α αααααΉαααΆααα ααααΆαααααΆααααααΌαααααααααα·αααααααααααΆααααααΆαα»ααααα»ααααα‘αΆα .
ααΎααααΈααΆαααΆααααααΆααααΉα RowHammer αααα»αα αα»αααα·ααααααααΈαααΆαααααΎααααααΆα TRR (Target Row Refresh) αααααΆαααΆααααααΆααααΉαα’αααΎαα»αααα½ααααααα·ααΆαα ααΆααααααΆ ααα»ααααα αΆααααΆααααΈααΆαααΆαααΆαααΊααα’ααααΎαααααΆααα "αα»ααααα·ααΆααααααΆααα·αα αααΆααααΆαα" ααΆαα·αααΆααααααααΆααααα αΆαα α«α ααα»ααααααααΌαααΆαααΆαααΆαααααΈααααΈαα·ααααααααααααΆαα αααααααΎα±ααααΆααΆααααα½ααααα»αααΆαααααααααα·ααΈααΎααααΈααααα»αααΈααΆαααΆαααΆαα ααΆα§ααΆα ααα αααα»αααα§αααΆ Google ααΆαααααΎαα·ααΈααΆααααα Half-Double ααααα·αααααΌαααΆααααααΆαααααααΆαααΆαααΆα TRR α αΆααααΆααααΈααΆαααΆααααα αΆααααααΆααααααααα·ααΆααααα·ααα αα·αααααα αααααααΆααα
αα·ααΈααΆαααααααααΈαααα Blacksmith αααααααΌααα·ααΈαααααααααΆααΎααααΈααααα»αααΈααΆαααΆαααΆα TRR αααααα’ααααΎααΆαα αΌαααααΎαα·αααΌα ααααΆαα ααΉααααααααααΆαααΆαααΈαα¬α αααΎααα ααααααααααααααααΆααΎααααΈαααααΆαα±ααααα ααααΆαααααα»αα ααΎααααΈαααααααααΆαααααΆαα αΌαααααΎα’αααα αα αΆααααααΆαα±ααααα ααααΆαααΆαααΆαααα α§αααααααααααα‘αααα·ααααα½αααααΌαααΆααααααΎαα‘αΎααααααααΎαααΎααααΆαααΆααααααααΆααααα αΆααααααααααααααααα·αααααΆαααααααααΈαααΆααααΆαα ααΆαααααΆααααααΌαααααΆαα α’αΆααααααααΈαα αα·αααααααααααααΆαα αΌαααααΎαααα‘αΆα
αα·ααΈααΆααααααααααα ααααα·αααααΌαααΆαααααΆαααααΆααααΆαα½αααΉαααΆαααα₯αααα·ααααΎαααα·ααΆααΌα ααααΆ ααααΎα±αααα·ααΈααΆαααααααΆαααΆα TRR αα αα α»αααααααα·αααΆαααααα·αααααΆα ααααααα»ααααααααα½α α¬αα½αααααααααααααΆααα α»ααααααΆαααΆααα ααα½αααααΆαα α ααααα αΎαααααααααα ααΆαααααα·ααΆ α αΎααα αααααααααααααΆααααΆααααααΌαααΆαααΆαααα α αΆααααααΎααααα αΌααααα‘αΎααα·αα αααααα·ααΆαα·αααΆαα αα αααα»α Blacksmith ααααΆαααααΆαα αΌαααααΎααααΌαααΆαααΈαααΆαααΆααα ααΎαααα‘αΆααΆα αααΎααααα»αααααααα½αααΈααααααααααααααΆααααααα αααααααΎα±ααααΆα’αΆα αααααα ααΆαααΌαααΆαααα ααααΆαααααα»αααααα·αααΆαααααααααααααα·αα αΆααααααΎαα
αα·ααΈααΆααααααααααΆαααααα·αααααΆαααΆααα·ααΈααΆααααααααααΆαααααΎα‘αΎαααΈαα»ααααααΆααααΆααααα TRR - α’αααααααΆαααααΆαα’αΆα αααααα ααΆαααΌαααΆααααααΌα αααααααααΆαααααα·α αααα»αααααα 40 αααααΎααα·ααααααααΈαα’αααα αα αΆα DDR4 ααααααααααΆαααααα·αααα Samsung, Micron, SK Hynix αα·ααααα»αα αα»αααα·αααααα·αααααΆαα (αααα»αα αα»αααα·αααΊ αα·αααΆααααααΆαααα ααΎ 4 αααααααααααΈ) α αααααΆααααΆααααααααα αα·ααΈααΆααααα TRRespass αααααααΎα‘αΎαααΈαα»ααααα’αααααααΆαααααΆαααΌα ααααΆααΊααΆαααααα·αααααΆααααααΆαααα 13 αααααααα»ααααααααα»αα αααα 42 ααααααααααααΌαααΆαααΆααααααα ααααααα
ααΆααΌαα αα·ααΈααΆααααα Blacksmith ααααΌαααΆαααααααΉαααΆααΉαα’αα»ααααα αααα 94% αααααααααΈα DRAM ααΆααα’αααα ααΎααΈααααΆα ααα»ααααα’αααααααΆαααααΆααα·ααΆαααΆαααααααΈααα½αα ααα½αααΆαααΆαααΆαααααααα αα·αααΆααααα½αααΆααααα αΆαααΆαααααααααααααααα ααΆαααααΎααααΆαααααααΌαααααα α»α (ECC) αα αααα»ααααααααααααΈ αα·αααΆααααααΎαα’ααααΆαααα»αα’αααα αα αΆααααααα αα·ααααααααΆαααΆαααΆααααααααα ααα»ααααααααΎα±ααααααα·ααααα·ααΆααααα»αααααΆαα αα½αααααααααΆααααΆαααα αΆαα·αα’αΆα ααΆααΆαααα αααα»ααααααααΈααααααΆαα ααααααΆααα½α α αΎα αα·ααααααΌαα±ααααΆαααΆαα’αα»ααααααΆαααΆαααΆαααααΈαα ααααα·ααααααααΉα ααΌα ααααααΆαααΆααααα αΆαααΉααα ααααΆαααΆααααΆααααα’ααααααααααΆα αααΎαααααΆαα
α§ααΆα αααααΆααααααααα½αααΆααα·ααΈααΆααααααααααΆααααΆαααααΎααααΆααααΆααααααΎααααΈααααΆααααααΌαααΆαα·ααΆααααΆαα»αα αααα»αααΆααΆααααααααα· (PTE, ααΆαα»ααΆααΆαααααα) ααΎααααΈααα½αααΆααα·αααα·ααΊααα ααααΎα±ααααΌα ααααΆααΆααα RSA-2048 ααααααααΆαα»ααααα»αα’αααα αα αΆααααα»α OpenSSH (α’αααα’αΆα ααΆαααααααΆααΆαααα αΌα αααΆαααΈααα·αααα·αααααααααΆααααΆααααΎααααΈααααΌααααααα―αααααααα’αααααΆααααα αΆαααΎααααΈααααΆαααα VM ααααααααααααα) αα·αααααααΆααααα½ααα·αα·αααα’ααααααααΆααααααααααα’αααα αα αΆαααααααΎαααΆα sudo ααΎααααΈααα½αααΆααα·αααα·ααΆ root α α’αΆαααααααΎαααααααΈα ααΆααααΌαα αααΆααααααΈ 3 αα·ααΆααΈαα α αααΎααααααααααααααΆααΆααααα αΆαααΎααααΈααααΆααααααΌαααααα αα½ααααΈαα
ααΎαααΈααα ααΎαα’αΆα
ααααααααΆααααΆαααααα»αααααααΆαααααααααα LiteX Row Hammer Tester ααΎαα
αα αααααΆααααΆααααααα·ααΈααΆαααααααΆαααΆαα’αααα
αα
αΆααααααΆααααΉαααΆαααΆααααα αΆαααΎααααΆαα RowHammer ααααααααΎαα‘αΎαααα Antmicro αααααΆαα Google α αααααααααααΊααα’ααααΎααΆαααααΎααααΆαα FPGA ααΎααααΈαααααααααααΆαααααα»αααΌαααΆααααααααΆαααααΆααααααΌααααααααΆαααα
αααααααΈα DRAM ααΎααααΈαα»αααααΆααα₯αααα·ααααααα§ααααααααααΆα’αααα
αα
αΆαα αααα
ααα§ααααααα
αααα»α Python ααααΌαααΆααααααααΌααααααΆααα’ααααααααααΆαα½α FPGA α α
αααααααΌααααααΆαααΌαααααΆαααΎ FPGA αα½αααΆααααΌαα»ααααααΆααααΆαααααααα·αααααααααα
ααααααααΆα (αααααααααΆαααΆαα
αΌαααααΎα’αααα
αα
αΆα) Payload Executor α§ααααααααααΆαααααΆαααΌαααααΆαααΎ LiteDRAM (ααααΎαααΆααααααα·ααααΆααΆααα’αααααααααΌαααΆααααααΆαα DRAM αα½αααΆααααΆαααααΎα±αααα½αααα αα·αααΆαααααΎαα
αα
α»ααααααααΆαα’αααα
αα
αΆα) αα·ααααΈααΈααΌ VexRiscv α ααΆαα’αα·ααααααααααααααααααααΌαααΆαα
ααα
αΆααααααα’αΆααααΆααααα Apache 2.0 α αααα·ααΆ FPGA ααααααααααΌαααΆαααΆαααα αα½αααΆαα Lattice ECP5, Xilinx Series 6, 7, UltraScale αα·α UltraScale+ α
ααααα: opennet.ru