커맨드 인젝션이란?
명령 삽입은 악의적 인 코드 실행, 사용자 데이터 수집 및 기타 활동에 참여할 목적으로 시스템에 액세스하기위한 시스템 취약점을 악용하는 것입니다. 명령 주입은 본질적으로 양성일 가능성이 있지만 일반적으로 그렇지는 않으며 중대한 보안 위협이 될 수 있습니다. 컴퓨터 시스템에서이 활동을 방지하도록 설계된 여러 가지 해결 방법이 있습니다.
명령 삽입의 가장 일반적인 취약점 중 하나는 웹 페이지 또는 컴퓨터 시스템의 양식입니다. 양식을 사용하면 사람들이 데이터를 입력 한 다음 시스템에서 처리 할 수 있습니다. 양식에 입력 된 데이터 유형에 제한이없는 경우, 사람들이 시스템이 읽고 실행할 컴퓨터 코드를 입력 할 수 있습니다. 웹 페이지의 양식은 입력을 다른 사용자에게 표시하도록 변환하여 다른 사람들도 코드에 노출시킬 수 있습니다. 예를 들어, 누군가 웹 사이트의 주석에 악성 스크립트를 남길 수 있습니다.
코드가 실행될 때 관리자 액세스를 포함하여 컴퓨터 시스템의 백엔드에 대한 액세스 권한을 사람들에게 제공하는 것과 같은 작업을 수행 할 수 있으며 컴퓨터 시스템에 바이러스 및 맬웨어를 심을 수도 있습니다. 감염된 컴퓨터가 네트워크를 통해 감염되지 않은 컴퓨터와 상호 작용할 때 명령 삽입이 확산되도록 설계 될 수 있습니다. 그것들은 매우 빠르게 퍼질 수 있으며 도중에 상당한 손상을 일으킬 수 있습니다.
명령 삽입을 피하는 한 가지 방법은 사람들이 입력 할 수있는 것을 제한하도록 설계된 방식으로 양식 및 기타 입력을 디자인하는 것입니다. 예를 들어 인터넷 주석의 경우 사용자가 스크립트를 입력해야하는 합법적 인 이유가 없을 수 있으며 주석 양식은 단순히 스크립트를 거부하면서 HTML을 마크 업 및 스타일링 할 수 있습니다. 마찬가지로, 컴퓨터 프로그램에서 입력 양식은 특정 문자의 입력을 거부하여 사람들이 양식의 코드를 실행하지 못하게 할 수 있습니다.
명령 주입으로 인한 잠재적 위험은 1990 년대에 처음 언급되었습니다. 수많은 설계자들이이 문제를 해결하고 명령 주입 공격을 방지하거나 중지 할 수있는 다양한 방법을 고안했습니다. 해커들은 또한 컴퓨터 시스템의 취약점을 통해 코드를 실행하는 새롭고 창의적인 방법을 개발하여 자체 해결 방법을 개발하려고 시도했습니다. 어떤 사람들은 순수한 학문적 관심에서 새로운 기술을 개발하고 때로는 연구가 야생으로 빠져 나갈 때 우연히 혼란에 빠질 수 있습니다.