파이썬을 이용해 bash 명령 실행하기

 

파이썬으로 공격코드를 짜다 보니 Bash 쉘 스크립트를 실행하는 여러가지 방법을 찾게 되었다.

이번 정리를 통해 추후 공격 스크립트 작성시 적절하게 활용할 수 있기를 기대해본다.

 

1. os.system 구문을 이용해 명령 실행 하기

위와 같이 단순히 명령 실행을 위해 사용시에는 문제가 없으나,
결과값을 특정 변수에 저장하는 목적으로 사용하기에는 적합하지 않다.
(명령 실행 결과의 성공 유무를 리턴하기 때문에…)

따라서 위의 단점을 보완할 수 있는 방법이 바로 subprocess 이다.

 

2. subprocess 이용하여 명령 실행하기

먼저 os.system과 같이 단순히 “실행”만 시킬 때는 “call” 메서드를 이용하면된다.

그러나 특정 명령 수행 결과를 바탕으로 if 조건문을 걸때에는 call이 아닌 check_ouput을 이용해야 한다.

예를들어 특정 파일 실행결과가 “AAA” 혹은 “BBB”라고 가정해보자.
“AAA” 일 경우 “123”을 출력하고 “BBB”일 때 “456”을 출력하려면 다음과 같이 코드를 작성하면 된다

위와 같이 check_output 메서드를 사용하면 해당 실행 결과를 스트링값으로 리턴해주기 때문에
실제 실행결과값을 바탕으로 조건 구문을 사용할 수 있게 된다.

 

3. 참고 사이트

아래 사이트에서 파이썬을 통한 bash 명령 사용법을 좀 더 상세하게 볼 수 있다.

https://docs.python.org/2/library/subprocess.html

http://mervine.net/executing-bash-from-python

 

 

  • Jack Kim

    구글에서 가장 상단에 있네요!! ㅋㅋ 잘 읽었습니다 ^_^

Site Footer

Sliding Sidebar

About Me

About Me

June Park