반응형 하얀해킹87 [Dreamhack] Exercise: SSH 문제 풀이 접속하려는 SSH 서버에 대한 id(user)와 password가 주어져 있다. Terminal에서 다음과 같이 문제 서버에 접속할 수 있다. ssh chall@host3.dreamhack.games -p 12810 Are you sure you want to continue to connect ? (yes/no) password : dhbgssh // 주어진 password를 입력한다. 문제 파일을 받으면 flag에 대한 파일이 있고, open을 하면 파일 내용은 다음과 같다. DH{this_is_not_real} 이는 문제에서 구하고자 하는 진짜 플래그가 아니다. 앞서 원격 접속한 ssh에서 cat flag 명령어를 통해 flag 파일의 내용을 찾아보자. chall@localhost:~$ cat fl.. 2023. 11. 20. SSH(Secure Shell, Secure Socket Shell) SSH : 원격 서버(컴퓨터)에 연결할 수 있도록 해주는 암호화된 네트워크 프로토콜이다. 사용법 : Terminal에서 ssh user@Host -p Port -i [개인 키 파일 경로] 명령어를 통해 사용할 수 있다. 여기서, user는 접속할 계정(사용자 이름)이며, Host는 접속하려는 원격 서버의 ip 또는 도메인이다. 특정 포트로 접속하고 싶은 경우 -p 옵션을 이용한다. 클라이언트가 접속하기 전에 사용자가 믿을 만 한지에 대한 인증이 필요하다. 2가지가 있다. 패스워드로 인증: ssh user@Host 명령어를 통해 패스워드를 입력한 뒤 원격 서버에 접속할 수 있다. 공개 키-개인 키 쌍으로 인증: ssh-keygen 명령어를 통해 원격 서버에 공개 키(public key)를 저장하고, 클라이.. 2023. 11. 20. 시스템 해킹(System Hacking)과 리버스 엔지니어링(Reverse Engineering), 웹 해킹(Web Hacking) 시스템 해킹 : 컴퓨터 프로그램의 행위를 조작하여 공격자가 원하는 행동을 실행하도록 하는 공격이다. 목표: 공격 대상 프로그램이 구동되는 서버의 임의 유저와 같은 권한을 획득하는 것이다. 원격 환경에 있는 공격자가 타깃 서버에서 운영체제의 명령어를 실행할 수 있는 공격을 원격코드실행(Remote Code Execution)이라고 한다. 리버스 엔지니어링 : 무언가를 설계하고 제작하는 '엔지니어링' 과정을 정반대로 수행하는 것이다. 예를 들어, 컴퓨터 프로그래밍적 관점에서는 프로그램의 동작을 직접 실행해 보면서, 컴파일된 결과물의 데이터를 분석하여 소스 코드의 내용을 추측하는 방법이다. 앞서 언급한 결과물을 '프로그램' 또는 '이진 파일'이라고 한다. 이는 사람의 눈으로 식별하기 어려운 데이터로 이루어져 .. 2023. 11. 19. [Dreamhack] baby-linux 문제 풀이 웹 해킹에 관한 문제이므로 http:// host : port로 접속한다. 우선, 이 웹 서비스에서 F12(관리자 모드)를 통해 정보를 확인해 보자. Baby Linux echo $() Submit Result 하지만, 위의 index.html 코드로 딱히, 힌트가 될만한 정보를 찾지 못하였다. 다시, 문제로 돌아가보자. 이 웹 서비스는 리눅스 명령어를 실행하는 사이트이다. 여기서, 우리가 찾아야 할 파일은 flag.txt이다. 이 파일의 위치를 찾기 전에 ls -l 명령어를 통해 작업 공간을 확인해 보자. 아래는 Result이다. total 24 -rwxr-xr-x 1 root root 884 Apr 21 2023 app.py drwxr-xr-x 3 root root 4096 Apr 21 2023 dr.. 2023. 11. 19. 이전 1 ··· 18 19 20 21 22 다음 반응형