inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Windows 시스템 프로그래밍 - 기본

실행 중인 프로세스 열거

실행 중인 프로세스에 대한 질문

해결된 질문

362

ground

작성한 질문수 4

1

선생님 안녕하세요, 강의 재밌게 보고 있는 수강생 중 한명입니다

"실행중인 프로세스 열거"를 듣고 있다가 하나의 궁금증이 생겨서 질문합니다. 영상을 이해한 바로는 시스템에서 실행중인 Process Handle 과 그 process가 사용한 메모리에 권한만 충족한다면 접근할 수 있다고 이해했습니다.

그런데 여기서 제가 소유하지 않은 프로그램에 접근해서 메모리와 정보를 읽는 프로그램을 만들고 배포 유통 까지 하면 현행법상 문제가 발생하나요? 예를들어서, 어떤 회사가 A라는 프로그램을 만들었는데 그 프로그램을 모니터링하는 프로그램을 제가 출시한다면 거기에 따른 법적 제약이 있는지 선생님 경험의 바탕에서 궁금합니다.

OS위에 돌아가는 process 간의 접근 제약이 그렇게 크지 않다는 것을 보고 갑자기 흥미로운 질문이 들어서 질문합니다 :D

질문 봐주셔서 감사하고 강의의 주제에 다소 벗어나는 질문인 것 같지만 가볍게라도 답변해주셨으면 감사하겠습니다.

c system-programming vc++

답변 1

1

널널한 개발자

아니오, 딱히 문제가 되지는 않습니다. 타 프로세스의 메모리를 보는 가장 대표적인 프로그램이 바로 '디버거' 입니다. 당장 Visual C++ 내장 디버거 프로세스는 내가 작성한 코드가 프로세스화 됐을 때 사용중인 메모리 영역은 물론 실행 코드 기계어까지 디스어셈블해서 보여줍니다. 심지어 메모리 직접 조작도 가능합니다. 아주 예리한 '칼'이라 하겠습니다.

이 칼을 누가 어떤 목적으로 들었는가에 따라 현행법상 문제가 될 수도 있겠습니다. 보통 리버싱을 통한 직접적인 공격은 해킹으로 간주해 법적 문제가 발생할 수 있습니다. 그 외에는 대부분 문제될 것이 없습니다. 특히 예로 든 '모니터링'은 매우 흔하고 자주 있는 일입니다. 그런 제품을 만들어 판매하는 것은 문제가 될 가능성이 매우 낮습니다. 다만 모니터링 대상 제품이 변경되거나 기능이 변경되는 경우 그에 따라 유지보수가 이루어지지 않으면 모니터링 기능은 유지될 수 없겠습니다.

참고로 그러한 모니터링이 매우 반갑지 않은 프로그램으로 게임 클라이언트가 있습니다. 해서 대부분의 게임들이 자신의 메모리 시스템을 보호하기 위한 보안 솔루션들을 적용해 운영하고 있습니다. 심지어 공격에 대한 방어력을 높이기 위한 개발 방법도 활용됩니다. 참고하시기 바랍니다.

세마포어 개수에 따른 스레드 점유상태

0

61

2

메모리 맵과 비동기 입/출력 조합 #2 수업내용에 질문있습니다.

0

96

2

힙 메모리 블럭 관리 방법 질문

0

97

2

MapViewOfFile 원리 관련 질문있습니다

0

102

1

가상 메모리 시스템 영역 구분

0

96

2

스택 크기 결정 단계

0

75

2

시스템프로그래밍-응용편

0

130

2

바이트와 관련된 유튜브 영상을 못 찾겠어요ㅠㅠ

0

94

2

파일 복사에 관한 질문입니다

0

114

2

세마포어 예제에 대한 질문이 있습니다.

0

111

2

메모장 쓰레기값 ?

0

133

2

64 bit 운영체제라면 가상메모리가

0

180

2

alertable Wait 상태 질문있습니다

0

226

1

GetCurrentDirectory 관련 질문

0

169

2

세마포어 예제중 형변환에 대한 질문

0

162

2

강사님 dll 지연로딩 관련하여 질문 드립니다

0

205

3

선장님 , _beginThreadEx() 함수 원리는 어디서 정보를 얻을 수 있을까요?

0

286

2

메모리 맵 강의 예제의 결과가 이상합니다.

0

227

1

강사님 파일입출력(Callback함수)와 관련하여 질문 드립니다.

0

348

2

dll 명시적 링크 오류 (원인 및 해결 방법이 필요 합니다)

0

967

2

static 영역의 rw 가능한 곳은 어떤 데이터가 담기는지 궁금합니다.

0

223

1

TerminanteProcess 와 관련하여 질문 드립니다.

0

172

1

강사님 스레드 관련 질문 드립니다.

0

226

1

강사님 메뉴얼 중 이것도 궁금해서 여쭤봅니다.

0

210

2