ls List의 약자로 해당 디렉터리(폴더)에 있는 파일 목록을 나열하는 명령어
cd Change Directory의 약자로 디렉터리를 이동하는 명령어
pwd Print Working Directory의 약자로 현재 디렉터리의 전체 경로를 화면에 표시하는 명령어
mkdir Make Directory의 약자로 새로운 디렉터리를 생성하는 명령어
touch 크기가 0인 새 파일을 생성하거나 생성된 파일이 존재한다면 파일의 최종 수정 시간을 변경하는 명령어
cp Copy의 약자로 파일이나 디렉터리를 복사하는 명령어
mv Move의 약자로 파일이나 디렉터리의 이름을 변경하거나 다른 디렉터리로 옮길 때 사용하는 명령어
rm Remove의 약자로 파일이나 디렉터리를 삭제하는 명령어
rmdir Remove Directory의 약자로 디렉터리를 삭제하는 명령어 (파일이 있는 디렉터리를 삭제하려면 rm -r 명령을 실행해야한다.)
cat Concatenate의 약자로 파일 내용을 화면에 출력하는 명령어
whoami 현재 명령을 실행하고 있는 사용자 이름 출력
id 사용자 id, 그룹 id, 속한 그룹 목록을 보여주는 명령어
ping 다른 시스템에 네트워크 요청을 보내는 명령어
Command Injection은 SQL injection과 같이 유저의 입력을 받는 과정에서 발생하는 보안 취약점으로 쉘 명령어를 조합하여 다양한 기능을 수행하게 도와주는 쉘 메타 문자를 통해 발생한다.

DVWA 웹 페이지에서 Command injection을 들어간다.
Enter an IP address: 에 입력한 IP를 대상으로 일반적인 ping 명령어를 수행하는 기능이 구현되어져 있다.


위 기능을 구현한 소스코드를 살펴보면 텍스트 란에 입력한 값이 아무런 검증 없이 target이라는 매개변수에 저장되어 ping 명령어 뒤쪽에 입력되어 사용되어지는 것을 확인할 수 있다.
따라서 ping 명령어 뒤쪽에 다양한 쉘 메타 문자를 입력하여 추가적으로 다른 시스템 명령을 수행할 수 있을 것 같다.
이렇게 127.0.0.1; cat /etc/passwd를 입력하면 사용자 계정 정보가 담긴 파일 내용이 추가로 출력된다.