[Hackthebox] Flag Command - Cyber Apocalypse 2024 CTF Writeup
·
Writeup
2024 Cyber Apocalypse CTF에서 출제됐던 웹 챌린지 문제다할당된 IP주소로 이동하면 시작 페이지가 뜬다 start 시작하고 HEAD NORTH/SOUTH/EAST/WEST 네 개의 방향 중에 고르면 된다동쪽으로 찍었는데 틀려서 숲 속에서 죽었다 아무거나 고르기 보다는 소스코드를 좀 살펴보자  playwon() 함수가 출력되면 플래그를 찾을 수 있을 것 같은데더 직접적인 단서는 못 찾겠다 main.js 소스코드를 더 살펴보면 경로를 좀 알 수 있다 HEAD NORTH→FOLLOW A MYSTERIOUS PATH→SET UP CAMP이렇게 가보자  SET UP CAMP 까지는 도달했는데 그 이후에는 또 죽었다개발자 도구에서는 더 이상 힌트가 없으니 burpsuite의 HTTP history..
[HackTheBox] Sherlock Brutus 리눅스 로그파일 분석 Writeup
·
Writeup
Brutus 이번 랩은 리눅스 로그 분석, DFIR에 대해 다뤄볼 예정이고 블루팀 트랙의 첫 번째 머신이다 Intro to Blue Team 트랙은 Defensive 해커들에게 특화된 머신들을 모아놓은 로드맵임워게임이나 챌린지 대부분이 offensive여서 블루팀인 나에겐 너무 소중하다..  auth.log 로그파일 필드 날짜, 시간HostnameServicePIDUserAuthentication StatusIP 주소, 호스트네임1. Analyze the auth.log. What is the IP address used by the attacker to carry out a brute force attack? 공격자가 브루트 포스 공격에 사용한 Ip 주소를 찾는데 'Failed password'가 연속..
[Hackthebox] SpookyPass Writeup
·
Writeup
일단 문제 파일을 다운로드받고 실행해보니 패스워드 값에 따라 플래그 출력 여부가 나뉜다파일 종류를 보니까 ELF 형식의 파일이다strings [file] 실행파일의 문자열을 출력해보니 누가봐도 패스워드처럼 보이는 문자열이 있다  입력하니 성공적으로 플래그를 찾음 근데 문제를 풀 수 있는 방법이 하나 더 있다바로 ltrace 명령어 사용하기!  ltrace로 패스워드 test를 입력했을때 어떤 과정을 거치는지를 볼 수 있다strcmp 비교하는 함수가 등장하고, test 단어와 s3cr3t ~ 문자열을 비교하므로 이게 패스워드임을 알 수 있다 생각보다 너무 간단하게 풀어서 머쓱하다..
[Hackthebox] Fawn Challenges Writeup
·
Writeup
핵더박스의 Fawn 챌린지를 풀어보았다일단 FTP란 File Transmission Protocol, 즉 클라이언트와 서버 간에 파일 전송을 위한 프로토콜을 의미함  FTP에서 사용되는 포트는 20, 21: 20번은 데이터 전송, 21번은 명령어 전송에 사용함FTP의 더 안전한 프로토콜은 SFTP Task 5From your scans, what version is FTP running on the target? 타겟의 ftp 버전을 파악하는 문제이다 출력 결과를 살펴보자  vsFTPd 3.0.3인것이 확인되고 운영되는 OS는 유닉스 환경이다계정 없이 로그인하는 상황이기 때문에 username이 anonymous으로 설정로그인 성공에 뜨는 상태 코드는 230  파일과 디렉토리를 출력하는 명령어 ls, 다..
[Hackthebox] Behind the Scenes 리버싱 챌린지 Writeup
·
Writeup
behindthescenes이라는 리버싱 챌린지를 풀어보았음$ ./behindthescenes ./challenge  어떤 패스워드를 입력하면 플래그를 알려주는 방식인듯하다파워쉘 powershell에서 strings 명령어로 대략 내용을 볼 수 있다  챌린지의 패스워드가 HTB{strings} 이런 구조라는 힌트가 있다디컴파일러 IDA에서 살펴보자  지금까지 했던 리버싱 문제들과는 다르게 cmp 조건문으로correct wrong 으로 나뉘는게 아니라 쭉 이어지는 구조다메모리 할당하는 _memset, _sigaction 같은 함수가 호출된다  디컴파일된 모습을 보니까 sigaction 구조체가 선언딘후에 memset으로 초기화된다sigaction() 함수를 호출해서 핸들러가 동작하도록 한다 근데 코..
[Hackthebox] Dancing Challenges Writeup
·
Writeup
hackthebox에서 제공되는 챌린지 Dancing을 풀어보자pwnbox를 사용하니까 진짜 편하고 좋은 것 같다학생요금제 신청하면 8달러밖에 안 해서 결제할까 생각 중 일단 nmap 스캐닝부터 시작해 보자3개의 포트가 확인되는데 microsoft-ds? 서비스가 445번 tcp 포트에 열려있다 구글링 해보니까 445번 포트는 파일공유를 위한 SMB라고 함  sudo smbclient -L {ip} smb를 다운로드하고 접속하니 4개의 share가 확인된다blank password로 접속할 수 있는 share를 찾아야 하니 하나씩 확인해 보자  smbclient \\\\{ip}\\{share} 예상대로 admin은 실패했고, Workshares라는 share는 접속에 성공했다    Amy.J James...