네트워크 보안
[Pwn] SelfReference/ Radare2
1. 정보수집 [0x100] 파일 종류 검사 리눅스 또는 BSD 기반 OS에서 사용되는 실행 파일 형식 아키텍처는 i386 실행 파일의 심볼 정보가 제거됨 [0x110] 파일에 포함된 문자 검사 [0x120] 파일 실행 플래그 형식은 FLAG{...} 플래그는 특정 방법으로 암호화돼 있다. 암호화된 플래그는 7d 56 18 43 15 67... 암호화된 플래그는 16진수 문제 파일에는 복호화를 위한 함수가 구현되지 않았다. ./SelfReference -encrypt 와 같이 실행 테스트해보기~ -encrypt라는 문자열을 첫 번째 인수로 지정해 문제 파일을 실행하면 두 번째 인수에 지정한 문자열이 암호화된다. 2. Radare2로 문제 풀기 [0x200] radare2 실행 파일을 분석하려면 aa 명령..
[HTB/starting-point] Responder
🔍 NTLM 인증의 작업 프로세스 Responder 유틸리티가 캡처하는 방법 LFI / RFI 1. Nmap port scan nmap -v -p- --min-rate 5000 -sV -sC 10.129.88.109 80 포트가 열려있지만 브라우저에서 접속해보면 http://unika.htb로 리다이렉션 되고 접속이 되지 않습니다. 이름 기반 가상 호스팅은 여러 도메인 이름을 호스팅하는 방법입니다. 각 이름을 단일 서버에서 사용합니다. 이렇게 하면 한 서버가 메모리 및 프로세서와 같은 리소스를 공유할 수 있습니다. 동일한 호스트 이름에서 모든 서비스를 사용할 필요 없이 주기를 수행합니다. 웹 서버는 HTTP 요청의 호스트 헤더 필드에 제공된 도메인 이름을 확인하고, /etc/hosts 파일은 호스트 이름..
[web] php 설치
🚀 설치 설치가 끝나면 Bitnami\wampstack-8.1.4-0 폴더 아래의 manager-windows.exe 파일이 아래와 같이 뜬다. 여기서 web server를 켜고 끌 수 있다. Bitnami\wampstack-8.1.4-0\apache2\htdocs 가 작업할 기본 디렉토리가 된다. 여기다가 test.php를 생성하고 다음과 같이 코딩해서 127.0.0.1/test.php로 접속해보자 ⚙️ 설정 Bitnami\wampstack-8.1.4-0\php 폴더의 php.ini 를 편집해서 설정을 바꿔보자. 1. 에러메세지 on (공부용일때만 상용에선 에러메세지를 보이면 취약점이 될 수 있음) display_errors = On 2. opcache 끄기 (켜두면 바로 반영안되고 캐시가 적용됨) o..
[VulnHub] Mr.Robot 🤖
1. 정찰 타겟 ip 찾기(네트워크가 Bridged여야함) netdiscover -i eth0 192.168.219.103으로 접속! 몇가지 명령어 매뉴얼이 보인다. prepare fsociety inform question wakeup join fsociety를 입력해보았다. join을 입력하자 이메일을 입력하라는 문구가 출력되었다. test@gmail.com을 입력하니 연락주겠다는 문구와 함께 홈으로 돌아왔다. /inform /question /prepare, /inform, /wakeup에선 미스터로봇 드라마의 장면을 보여줬다. /robots.txt fsocity를 열어보니 brute force의 재료가 될 법한 단어 사전이 출력되었다. key-1-of-3.txt 도 같은 방식으로 다운로드해서 열어..
📖 CTF 정보보안 콘테스트 챌린지북 (네트워크/패킷분석)
예제 1. Follow Streeeeam!! ICMP 패킷이 많이 보임 Protocol Hierarchy로 패킷에서 사용된 프로토콜을 확인 TCP ICMP Follow TCP Stream으로 주고받은 데이터를 연결해서 확인 ctf4b{netcat-is-useful} 예제 2. 이건 파일입니까? TCP 패킷이 많이 보임 Conversations 를 보면 ipv4 주소가 사설 ip 임을 알수 있음 대부분의 TCP 통신이 80 Protocol Hierarchy TCP HTTP http로 필터링 .txt 확장자 파일을 다운로드하는 패킷들을 발견할 수 있음 Export Objects로 HTTP 파일을 내보냄 Adefdx2e 파일만 파일 크기가 다름 파일이름이 다 랜덤한데 filename, FlaGDesu는 의도가..
📖 실전 바이너리 분석 (lvl2)
1. lvl2 파일 분석 64bit 실행가능 LSB(Least Significant Bit: 메모리의 최하위 비트부터 순서대로 숫자를 정렬) strip된 ELF 파일 동적 링크됨 interpreter /lib64/ld-linux-x86-64.so.2 다 조합하면 034fc4f6a536f2bf74f8d6d3816cdf88
[RE/Lenas tutorial] (01/40) Olly + 어셈블러 + 기본 reverseme 패치
01. Olly + 어셈블러 + 기본 reverseme 패치 ReverseMe 파일을 실행해보면 평가 기간이 만료되었으니 새 라이센스 구입하라는 메세지 박스가 뜬다. OllyDbg로 열어보자. CreateFileA 파일 또는 I/O 장치를 만들거나 엽니다. 가장 일반적으로 사용되는 I/O 장치는 파일, 파일 스트림, 디렉토리, 물리적 디스크, 볼륨, 콘솔 버퍼, 테이프 드라이브, 통신 리소스, 메일 슬롯 및 파이프입니다. 이 함수는 파일 또는 장치, 지정된 플래그 및 속성에 따라 다양한 유형의 I/O에 대해 파일 또는 장치에 액세스하는 데 사용할 수 있는 핸들을 반환합니다. (출처: msdn) 함수가 성공하면 반환 값은 지정된 파일, 장치, 명명된 파이프 또는 메일 슬롯에 대한 열린 핸들입니다. 함수가 ..
🐋 Docker 환경구축
Docker는 os수준 가상화를 이용하여 컨테이너에 애플리케이션과 해당 종속성을 패키징해준다. 이 컨테이너에는 라이브러리, 시스템 도구, 코드, 런타임 등 소프트웨어를 실행하는데 필요한 모든 것이 포함되어 있다. 쉽게 말해 Docker를 사용하면 환경에 구애받지 않고 애플리케이션을 배포 및 확장할 수 있다. Docker 작동방식 Docker는 코드를 실행하는 표준 방식을 제공한다. Docker는 컨테이너를 위한 운영 체제다. 가상머신이 서버 하드웨어를 가상화하는 방식과 비슷하게(직접 관리해야 하는 필요성 제거) 컨테이너는 서버 운영 체제를 가상화힌다. Docker는 각 서버에 설치되며 컨테이너를 구축, 시작 또는 중단하는 데 사용할 수 있는 간단한 명령을 제공한다. Docker 설치 1. update a..