Wargame & CTF/picoCTF 19

[picoCTF][Web Exploitation]Irish-Name-Repo 2 문제 풀이

문제 풀이 Irish-Name-Repo 1과 구성 동일 첫 번째 시도 Username : ' or 1=1 -- Password : 12 -> 무언가 필터링이 되고 있음 Username에 ', or, =, -- 를 입력하면 로그인이 실패했다는 문구가 뜸 -> 이를 필터링하지 않음 Username에 ' or 를 입력하니 SQL 문구가 뜸 -> ' or 를 필터링함 두 번째 시도 Username : admin' -- Password : 12 picoCTF{m0R3_SQL_plz_aee925db}

[picoCTF][Reverse Engineering]asm2 문제 풀이

문제 풀이 : sub esp,0x10 esp의 주소값에서 0x10(16byte)를 빼서 esp에 넣음 -> 16 byte의 공간을 확보 : mov eax,DWORD PTR [ebp+0xc] : mov DWORD PTR [ebp-0x4],eax : mov eax,DWORD PTR [ebp+0x8] : mov DWORD PTR [ebp-0x8],eax ebp-0x4 및 ebp-0x8에 두 개의 새로운 위치가 생성 ebp + 0xc의 값이 저장 -> ebp-0x4는 0x21을 저장 -> ebp-0x8은 0x4를 저장 : jmp 0x509 28행으로 무조건 점프 : cmp DWORD PTR [ebp-0x8],0xfb46 ebp-0x8에 저장된 값과 0xfb46를 비교 : jle 0x501 0x4 < 0xfb46..

[picoCTF][Web Exploitation]Irish-Name-Repo 1 문제 풀이

문제 풀이 메뉴 우리는 로그인을 해야하므로 Admin Login으로 접속 첫 번째 시도 Username : guest Password : guest -> Username과 Password를 모르기 때문에 sql injection을 사용 ※SQL Injection 이란 악의적인 사용자가 보안상의 취약점을 이용하여, 임의의 SQL 문을 주입하고 실행되게 하여 데이터베이스가 비정상적인 동작을 하도록 조작하는 행위 SQL Injection 이란? (SQL 삽입 공격) 1. SQL Injection 1.1 개요 Ÿ SQL Injection SQL Injection 이란 악의적인 사용자가 보안상의 취약점을 이용하여, 임의의 SQL 문을 주입하고 실행되게 하여 데이터베이스가 비정상적인 동작을 하도록 조작 noirst..

[picoCTF][Reverse Engineering]vault-door-5 문제 풀이

문제 풀이 파일 형식을 보니 java인 것을 확인 bintext를 사용하여 코드를 확인 (문제를 푸는데 중요한 부분의 코드) checkPassword를 분석 urlEncoded = urlEncode(password.getBytes()); password를 바이트로 변환한 것을 url인코딩을 하여 urlEncoded에 저장 ※getBytes() 메소드 : Java 문자열을 바이트로 변환 base64Encoded = base64Encode(urlEncoded.getBytes()); urlEncoded를 바이트로 변환하여 base64인코딩을 하여 base64Encoded에 저장 return base64Encoded.equals(expected); base64Encoded와 expected의 내용을 비교 bas..

[picoCTF][Web Exploitation]where are the robots 문제 풀이

문제 풀이 'robots'를 통해 robots.txt 추측 가능 (-> robots.txt에 대한 설명은 하단을 참고) robots.txt로 이동 -> 형식을 통해 /477ce.html 만 차단을 해놓은 것을 확인 /477ce.html 주소로 이동 -> flag 값 확인 picoCTF{ca1cu1at1ng_Mach1n3s_477ce} [Web]robots.txt robots.txt 웹사이트에 웹 크롤러같은 로봇들의 접근을 제어하기 위한 규약 ※크롤러란? 크롤링하는 소프트웨어 ※크롤링(crawling) 혹은 스크레이핑(scraping) 웹 페이지를 그대로 가져와서 거기서 데 seomj74.tistory.com

[picoCTF][Web Exploitation]dont-use-client-side 문제 풀이

문제 풀이 F12 관리자 모드 -> 코드를 쭉 보다 보니 알맞게 배열하면 flag 값을 얻을 수 있을 것 같은 부분을 발견 .substring( start, end ) start와 end로 문자열에서 골라낼 부분의 처음과 끝을 지정 split 값을 4로 설정 if문을 모두 만족해야 올바른 패스워드 ->chaekpass의 문자열은 if문의 조건들을 조합하면 알 수 있음 picoCTF{no_clients_plz_1a3c89}