Git Project Patches Remote Code Execution Vulnerability in Git


Git Project ออกประกาศเกี่ยวกับช่องโหว่ remote code execution ใน Git command line client, Git Desktop และ Atom ซึ่งส่งผลกระทบระดับ critical ทำให้ Repositories อันตรายสามารถรันคำสั่งจากระยะไกลมายังเครื่องที่มีช่องโหว่ได้

ตามปกติแล้วเมื่อมีการใช้คำสั่ง clone จาก repository ด้วยคำสั่ง ‘git clone –recurse-submodules argument’ ตัว Git จะค้นหา URL ภายในไฟล์ .gitmodules และส่งค่า URL ต่อไปให้โปรเซสย่อยของ git clone

แต่เนื่องจากช่องโหว่ดังกล่าวที่ได้รับรหัสคือ CVE-2018-17456 หากผู้โจมตีสร้าง repository ที่เป็นอันตรายโดยสร้างไฟล์ที่ชื่อ .gitmodules โดยภายในมี URL ที่เริ่มด้วยเครื่องหมายยัติภาค "-" ตัวโปรเซสย่อยจะแปล URL เป็น Option ซึ่งทำให้ผู้โจมตีสามารถ Remote Code Execution ได้ ช่องโหว่นี้มีความคล้ายคลึงกับช่องโหว่ injection (CVE-2017-1000117) ซึ่งได้มีประกาศออกมาก่อนหน้านี้

เช่น ถ้าผู้โจมตีระบุ url ภายในไฟล์ .gitmodules เป็น url = ssh://-oProxyCommand=touch VULNERABLE/[git@github.com|mailto:git@github.com]:/timwr/test.git จะเป็นการสั่งให้คำสั่ง "touch VULNERABLE/[git@github.com|mailto:git@github.com]:/timwr/test.git" ทำงาน

ช่องโหว่นี้ได้รับผลกระทบกับ Git v2.19.1 ( backports v2.14.5, v2.15.3, v2.16.5, v2.17.2 และ v2.18.1), GitHub Desktop 1.4.2, Github Desktop 1.4.3-beta0, Atom 1.31.2 และ Atom 1.32.0-beta3

Git Project แนะนำให้ผู้ใช้งานอัปเกรด Git client, Github Desktop หรือ Atom เป็นเวอร์ชันล่าสุดเพื่อป้องกันความเสี่ยงในการโจมตีจากช่องโหว่ดังกล่าว

ที่มา : bleepingcomputer