2017-12-14 16 views
0

GitLab 버전을 실행하는 동안 원치 않는 메시지를 표시 후크 파일 -는 사전 수신 후크에게

9.3.6는 최근에 나는 밀어 이진 파일을 차단하기위한 pre-receive 후크를 추가했습니다. 나는

Testing Server side displaying message

내가 라이브 서버 시스템에서 동일한 후크 파일을 추가 (이미지 아래에) 내 gitlab 테스트 서버 시스템에서 예상을 얻을 수 있습니다. 그러나 메시지를 표시하는 데 또 다른 추가 줄이 있습니다 (아래).

Live server side displaying message

사실, 내 후크가 제대로 작동합니다. 그러나 메시지에 여분의 행이 표시됩니다. 내 후크 파일에 여분의 인쇄 문이 없다고 확신합니다.

어떻게 그 메시지 라인에서 라인 hooks/pre-receive:3: warning: Insecure world writable dir /opt/gitlab/embedded/libexec in PATH, mode 040777을 제거 할 수 있습니다 메시지가

remote: hooks/pre-receive:3: warning: Insecure world writable dir /opt/gitlab/embedded/libexec in PATH, mode 040777   

remote: Hello there! We have restricted the binary files (.exe, .dll, .zip, .7z, .deb, .cab, .gz, .pkg, .iso) that are pushed into GitLab.   
remote: Your changes contain following file(s) from origin commit c7a151fb to a4e7c31c. Kindly remove the following file(s) and try again.   
remote:  NewTest.dll   

확약 내?

+0

커밋에서이 dll 파일을 제거 할 수 있습니까? – hezanathos

+0

@hezanathos 만약 내가 dll 파일을 제거하면, 그 지점에 커밋 할 수 있습니다. 하지만 모토 표시 오류 메시지가 제대로 표시됩니다 – Parkavi

답변

3

경고는 /opt/gitlab/embedded/libexec이 세계에 쓰기가 가능함을 나타냅니다. 이것은 훅이 분명히 실행되는 PATH 환경의 일부이기 때문에 보안 문제입니다. 즉, 서버에 액세스 할 수있는 사람은 누구나 실행 파일을 해당 디렉토리에 넣을 수 있습니다. 따라서 악의적 인 명령이 포함 된 합법적 인 명령을 숨길 수 있습니다. 이러한 명령을 후크 내에서 사용하면 누구나 후크를 실행하는 사용자의 권한을 얻을 수 있습니다. 내가 sudo chmod go-w /opt/gitlab, sudo chmod go-w /opt/gitlab/embedded/binsudo chmod go-w /opt/gitlab/embedded

를 사용하여이 문제를 제거

chmod o-w /opt/gitlab/embedded/libexec 
+0

설명해 주셔서 감사합니다. 당신의 대답으로이 문제를 극복했습니다. – Parkavi

0

나는에 쓰기 권한을 부여 :

는이 문제를 해결하려면, 당신은 표시 libexec 디렉토리 디렉토리가 아닌 세계를 쓰기 가능해야한다 경로가 오류에 표시됩니다. 마지막으로, 그것의 작품.