전체 글 208

윈도우 프록시 강제 설정 (일부 설정은 조직에서 관리합니다)

프로젝트 점검을 나가다 보면 중앙에서 정책으로 윈도우 설정을 제한하는 경우가 존재한다. 웹 모의해킹 진행을 위해서는 프록시 설정을 변경해야 하지만 정책으로 막혀있는 경우 "일부 설정은 조직에서 관리합니다" 라는 메시지와 함께 변경이 불가하다. 이 경우 레지스트리를 변경하면 된다. 1. 레지스트리 직접 변경 레지스트리를 통해 프록시 설정을 해줄 수 있다. [프록시 설정] 프록시 활성화 - HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable = 1 프록시 비활성화 - HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settin..

카테고리 없음 2023.02.22

전자정부프레임워크 SQL Injection 취약점 추가하기

전자정부 프레임워크로 개발된 시스템에 특정한 목적을 위해 강제로 취약점을 부여해야하는 프로젝트가 있었다. 당시 시스템을 개발하던 개발자에게 SQL Injection 취약점을 부여해 달라고 요청 하였으나, 전자정부 프레임워크로 개발되었기 때문에 해당 취약점은 넣을 수 없다는 답변이 돌아왔다. 정말 프레임워크로 개발되었기 때문에 취약점 부여가 불가능한가? 당시 잠깐 찾아보고 테스트를 한 결과 아니었다. 전자정부 프레임워크 자체가 어렵게 구성되어있는 프레임워크도 아니기 때문에 쉽게 변경 가능하다. 1. 전자정부 프레임워크란? 솔직히 잘 모르겠다. 스프링 베이스의 프레임워크이며 국내 기업들의 개발 표준을 제시한 것 같다. https://egovframe.go.kr/home/compatsw/compatswList..

카테고리 없음 2021.11.15

SMTP서버 구축

테스트 용도로 SMTP서버를 구축해야 하는 경우가 있다. docker를 이용하여 간단하게 SMTP 서버를 구축하고 이용하는 방법이다. SMTP 서버: https://github.com/docker-mailserver/docker-mailserver Webmail 서버: https://www.rainloop.net/ 위 두개를 이용하여 서버를 구축한다. docker-mailserver 깃을 가져온 다음 docker-compose.yml에 rainloop 내용만 추가하면 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 version: '3.8' service..

카테고리 없음 2021.05.19

암/복호화 코드 샘플 (pycrypto)

가끔 서버간 통신이나 데이터를 저장할 때 암호화를 사용하는 경우가 있다. 보통 AES 암호화에 CBC모드를 주로 사용한다. 암호화 문자열 길이에 따라 뒤에 패딩값을 주는데 보통 문자열 길이를 기반으로 패딩값을 만든다. 예를 들면 평문: message 블록 사이즈: 16 패딩 문자열: \x09 (16-len(message)) 암호화할 문자 블록: message + '\x09'*9 위와 같이 된다. 아래는 주로 사용하는 암호화별 암/복호화 코드이다. 코드를 사용하려면 pycrypto가 있어야 한다. Linux: python -m pip install pycrypto Window: python -m pip install pycryptodome 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1..

카테고리 없음 2021.05.18

브라우저 시크릿 모드 우회

회사에서 NAC을 통해 그룹 정책이 내려오는 경우가 있다. 내려오는 정책 중 시크릿 모드(또는 프라이빗 모드)를 제한하는 정책이 내려오는데 점검을 하려면 다중 세션이 필요하므로 시크릿모드를 사용해야 한다. 아래 레지스트리를 건드리면 이를 우회할 수 있다. Google Chrome (0: 시크릿모드 사용, 1: 시크릿모드 차단, 2: 시크릿모드 강제사용) [Chrome 90.0.4430.212] reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome" /t REG_DWORD /v IncognitoModeAvailability /d 0 /f Brave Browser (Chrome과 동일) [Brave 1.24.85] reg add "HKEY_LOCAL_MA..

기타 2021.05.17

RPISEC 연습문제 / crackme0x0?? (기초 리버싱, radare2 연습)

문제는 간단하다. password를 받고 고정된 값과 같으면 성공 메시지를 출력한다. strings로 긁어낼 수도 있다. 먼저 radare2를 이용하기 전이라면 사용했을 gdb를 이용한다. [ gdb / b *main+70 ] main+70에는 strcmp가 들어있다. 비교구문을 잡으면 스택에 비교하는 데이터들을 확인할 수 있기 때문. 보면 1234는 입력한 값이고 g00dJ0B!이 flag가 된다. radare2를 이용한 풀이이다. 아직 문제를 더 풀어 보아야 할 듯 하다. 기본적인 명령어 aa - analyze all pdf @ function name - function [0x08048430]> pdf @main ;-- main: / (fcn) sym.main 133 | sym.main (); | ..

CTF | wargame 2018.02.27

hdcon 2016 / runme (mips 프로그램 실행)

mips 가상머신을 돌리려고 하다 보니 mips 관련 문제 풀이로 이어져서 풀어보게 되었다. ref : http://kblab.tistory.com/328 qemu는 1712 최신버전으로 먼저 받고 링크 페이지에 필요한 파일들을 받고 배치파일을 생성한다. qemu-system-mipsel -M malta -kernel vmlinux-3.2.0-4-4kc-malta -hda debian_wheezy_mipsel_standard.qcow2 -append "root=/dev/sda1 console=tty0" -redir tcp:4444::22 -nographic mips.bat 파일 공유 부분은 가지고있던 vm웹으로 전송하는 형태로 사용하였다. 뭐... runme 문제 자체가 mips상에서 실행하면 되는 프로..

CTF | wargame 2018.02.27

linux / source.list 수정하기

qemu로 mips squeeze 버전을 설치했었다. 필요에 의해 gdb를 설치하려는데 자꾸 설치가 안된다. root@debian-mips:~# apt-get install gdb Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: gdbserver libpython2.6 Suggested packages: gdb-doc The following NEW packages will be installed: gdb gdbserver libpython2.6 0 upgraded, 3 newly installed, 0 to ..

기타 2018.02.27