AI (Artificial Intelligence) has significantly revolutionized software engineering with several advanced AI tools like ChatGPT and GitHub Copilot, which help boost developers’ efficiency.
Besides this, two types of AI-powered coding assistant tools emerged in recent times, and here we have mentioned them:-
- CODE COMPLETION Tool
- CODE GENERATION Tool
Cybersecurity researchers Sanghak Oh, Kiho Lee, Seonhye Park, Doowon Kim, Hyoungshick Kim from the following universities recently identified that poisoned AI coding assistant tools open the application to hack attack:-
- Department of Electrical and Computer Engineering, Sungkyunkwan University, Republic of Korea
- Department of Electrical Engineering and Computer Science, University of Tennessee, USA
Poisoned AI Coding Assistant
AI coding assistants are transforming software engineering, but they are vulnerable to poisoning attacks. Attackers inject malicious code snippets into training data, leading to insecure suggestions.
This poses real-world risks, as researchers’ study with 238 participants and 30 professional developers reveals. The survey shows widespread tool adoption, but developers may underestimate poisoning risks.
In-lab studies confirm that poisoned tools can influence developers to include insecure code, highlighting the urgency for education and enhanced coding practices in the AI-powered coding landscape.
Attackers aim to deceive developers through generic backdoor poisoning attacks on code-suggestion deep learning models. This method manipulates models to suggest malicious code without degrading overall performance and is hard to detect.
Attackers leverage access to the model or its dataset, often sourced from open repositories like GitHub, and here, the detection is challenging due to model complexity.
Mitigation strategies include:-
- Improved code review
- Secure coding practices
- Fuzzing
Static analysis tools can help detect poisoned samples, but attackers may craft stealthy versions. After the tasks, participants had an exit interview with two sections:-
- 1. Demographic and security knowledge assessment, including a quiz and confidence ratings.
- 2. Follow-up questions explored intentions, rationale, and awareness of vulnerabilities and security threats, such as poisoning attacks in AI-powered coding assistants.
Recommendations
Here below we have mentioned all the recommendations:-
- Developer’s Perspective.
- Software Companies’ Perspective.
- Security Researchers’ Perspective.
- User Studies with AI-Powered Coding Tools.