정보 보안 연구 – 24주차, 6일차 – Github 단점 및 보안 사고

☞ git의 탄생 배경

그룹 과제를 생각할 때

개발 후 개발 자원을 압축하여 서로에게 보내어 공동 개발을 이어갑니다.

하지만 거래를 하다가 아무것도 모르고 삭제를 하게 되면 확인할 방법이 없고 되돌릴 수 없습니다.

이 문제를 해결하려면 변경 상태를 확인하십시오.

추가, 삭제, 수정된 내용을 업로드 전에 미리 알려주는 시스템입니다.

누구나 녹음하고 공유할 수 있으므로 다른 사람이 개발할 때까지 기다리지 않고 바로 자신의 개발을 시작할 수 있습니다.

깃허브인터넷에서 그랬다.

github 외에도 많은 저장소 서비스가 있습니다.

개발자가 없이는 할 수 없는 정보가 너무 많기 때문에 많은 사람들이 사용합니다.

누락된 코드가 없는 정도입니다.

개발자는 자료를 오픈 소스로 공개하고 별을 획득하여 천재로 인정받습니다.

해커에게도 유용합니다.

취약점 관련 악용 코드, PoC 코드 및 스크립트 정보를 업로드합니다.

따라서 해커는 이를 참조로 사용할 수 있습니다.

참고로 vulnhub는 취약한 시스템을 만들어 문제로 올립니다.

다운로드 및 압축해제를 하면서 해킹 공부를 하는 것이 좋습니다.

참고로 C언어가 막 MS-DOS처럼 나왔을 때 예전에는 어셈블리 언어로 코딩을 했다고 합니다.

MS-DOS 오픈소스가 .ASM 파일로 업로드 되어 있어서 확인도 가능합니다.

나는 또한 어셈블리 언어로 Rollocoaster tycoon을 만들었습니다.

하지만 그것들이 너무 많기 때문에 내가 가지지 않았으면 하는 것들이 있습니다.

중국인의 관점에서 인터넷 검열을 우회하는 코드/프로그램이 포함된 github는 싫어합니다.

그래서 봉쇄 상황이 벌어지고 중국 개발자들이 난리를 피우며 풀어준다.

그러나 Github 사이트(서버)와 사용자 사이에 중개자를 배치하여 MITM 공격을 모니터링합니다.

그 증거로 해외 IP로 프록시 접속시 인증서에 문제가 없었지만 중국 IP로 접속시 https 인증서가 정상이 아님을 알 수 있습니다.

지금도 물론 잡히지 않을 수도 있지만 감시 상황일 수도 있다.

그 후 모니터링 대신 Kiti라는 중국 사이트를 직접 만들어 Github를 덜 사용했습니다.

하지만 이 또한 코드 리뷰를 하고 코드가 불량할 때 조치를 취하는 상황입니다.

github 관련 사건말하자면

Twitter 소스 코드는 몇 달 동안 GitHub에 노출되었습니다.

소스 코드는 건물의 청사진과 같습니다.

따라서 그가 없으면 그는 소프트웨어를 추측하는 해커와 같습니다.

현재 Github와 협력하여 누가 다운로드했는지, 누가 다운로드했는지 확인하고 있습니다.

이는 회사를 대량 퇴사하는 행위일 가능성이 높다.

Github SSH 호스트 키(RSA)가 공개된 사건도 있습니다.

원래는 공개키를 올려야 했는데 실수로 비공개키를 올렸습니다.

이를 통해 초기 탐험가는 SSH를 통해 로그인하고 즐길 수 있었습니다.

이제 나는 그들에게 첫 번째 키를 가져오고 호스트 키를 재생성하고 나머지 키도 다시 가져오라고 말합니다.

기능 및 업로드 프로세스

github가 최신 버전을 출시하면 이전에 다운로드한 사용자는

적절한 파일을 다운로드하고 적용하기만 하면 됩니다.

릴리스가 없으면 전체 주소에 git clone을 하거나 ZIP을 다운로드하십시오.

.gitignore 설정

업로드하고 싶지 않은 파일이 실수로 업로드될 수 있습니다.

업로드하고 싶지 않은 확장 프로그램을 추가할 수 있습니다.

B. 이미지 또는 C 언어 파일.

프로젝트를 생성할 때

터미널에서 한 번 자식 구성아이디와 이메일을 등록합니다.

Gitclone으로 폴더를 가져오고 프로젝트에 적합한 프로그램을 작성하십시오. B. 파이썬 키로거.

작성 후 힘내 상태 ~처럼 추가 및 삭제된 포인트를 추적하고 알려줍니다.

코드 추가

git add .

또한 현재 디렉터리의 모든 파일을 업로드합니다.

git status로 다시 추가되었는지 확인

git commit -m "(+) keylogger.py"

약속하다.

변경 이력을 명확하게 표시하여 문서에 삽입하는 작업입니다.

git push origin main(branches이름)

업로드입니다.

조금 다른 것을 하고 싶다면 분기(A/B 기능을 따로 추가하고 싶다면)

아니면 같이 개발하다보면 충동이 생길 수 있으니 따로따로 개발했다가 나중에 합칠 수도 있습니다.

Github 비밀번호를 사용하지 않습니다.

개인 액세스 토큰은 별도로 생성해야 합니다(클래식).

기한을 설정하고 Repo를 클릭하십시오.

토큰 값을 복사하여 붙여넣기만 하면 됩니다.

이렇게 하면 처음부터 완제품을 만들 필요 없이 프로젝트가 진행됨에 따라 단계별로 빌드할 수 있습니다.

github의 문제

1) 개발자의 개인정보, 계정정보, 인증정보 등이 업로드되어 공개될 수 있습니다.

예를 들어 A라는 사이트는 Wonder에서 개발했는데 OSINT로 깃허브를 열람하면 비슷한 프레임처럼 보이는 프로젝트가 있을 수 있습니다.

댓글 섹션에서 관리자 계정 ID/암호를 캡처하고 바꿀 수 있습니다.

> 신중하게 게시하는 것이 좋습니다.

2) 앞서 말했듯이 깃허브는 악성코드 자체를 공유하고 분석한다.

맬웨어 검사가 거의 없습니다.

따라서 개발자 입장에서는 자신도 모르는 사이에 다운로드 및 가로채기가 가능합니다.

예를 들어 .sln 솔루션 파일에 숨겨져 있지만 개별적으로 분석하지 않는 한 숨겨진 코드 한 줄을 찾는 것은 불가능합니다.

이를 방지하기 위해서는 바이러스토탈을 실행하거나, 유명도가 높은지 확인하거나, 쇼트코드인지 직접 분석해 보시기를 권장합니다.

물론 가상 환경에서 실행하는 것이 중요합니다.

현재 Hackthebox Nmap 스캔을 실행하면 웹 서버가 실행 중이라고 표시되지만 리디렉션 중이기 때문에 해당 주소에 연결할 수 없습니다.

물론 인터넷이나 브라우저 테스트를 해보니 브라우저 문제가 아니어서 DNS 부분이 문제인 것 같아서 해결을 해보았지만 아직 해결을 못했습니다.

hackthebox 자체가 블랙박스 기반의 테스트이기 때문에 쉬움의 표시나 난이도 표시는 없습니다.

조금 어렵습니다.

다음번에는 이것을 풀고 확인해보도록 하겠습니다.