본문 바로가기
728x90

분류 전체보기215

Lord of SQL Injection 3단계 (goblin) 이번에 처지할 몬스터는 goblin! 코오드를~ 봐아볼까아~ 이번 문제는 싱글쿼터('), 더블쿼터(")가 필터링된 것을 알 수 있다. id=admin이 되어야 되는데 id값이 guest로 고정되어 있는 것을 알 수 있다. 처음에는 id값을 바꿔보려 시도를 했는데 아무리 해도 바꾸는 법을 찾지 못했다. 생각해 보니 id와 no 값이 and로 연결되어 있으니까 no값이 거짓(False)이 되면 id = guest도 거짓으로 출력될 것이다. no = 2를 넣었는데 Hello guest가 출력 안되는 거 보니 no값이 2는 아닌 것을 알 수 있고 그러면 뒤에 or id='admin'을 넣어 id='admin'부분을 참으로 만들어 주면 되는데 싱글쿼터(')가 필터링되어 있으므로 url인코딩을 이용하여 %27로 시.. 2023. 3. 8.
[개념정리] 단방향 암호화 단방향 암호화(One way encryption) 단방향 암호화란 말 그대로 one way 한쪽 길로만 암호화 한다는 의미이다. 실생활에서 일방통행을 생각하면 이해하기 쉽다. 즉 암호화만 가능하고 복호화는 불가능하므로 DB가 공격자에 인해 공격받아 노출되어도 안전하다. 이처럼 보안성이 높고 비밀번호를 관리하는 많은 DB에서 사용된다. 단방향 암호화 종류 지금 가장 많이 사용되고 있는 알고리즘은 SHA-256이다. MD5 MD5는 메세지 축약 알고리즘으로 파일 무결성 검사용도로 많이 쓰인다. 128비트의 해쉬를 제공하며, 암호와와 복호화를 통하여 본안용도로 많이 쓰인다. 하지만 암호하 결함이 발견되어 보안성이 떨어져 SHA와 같은 알고리즘을 사용하는것을 권장한다. SHA-256 SHA-256은 SHA알고리.. 2023. 3. 7.
Lord of SQL Injection 2단계 (cobolt) 이번에 처치할 몬스터는 cobolt! 일단.... 1단계 문제와 차이점은 pw부분에 md5()라는 암호화 해시 함수가 있고 조건을 보면 id 가 admin이면 문제가 풀릴 것 같다. 그러면 id에 admin을 넣고 pw부분을 주석 처리하면 암호화도 건너 뛸 수 있는 거 아닌가? 바로? id= admin' %23을 넣어 봤더니 풀렸다... 아마 만든 사람의 의도는 pw가 단방향 암호화 방법으로 되어 있는 것을 보고 주석 처리나 다른 방법을 생각해 보도록 한 것 같다. 단방향 암호화에 대해 더 궁금하신분은 여길 참조 해보길 바란다. https://jh-hack.tistory.com/15 이미 주석을 사용해본 입장으로 쉽게 풀어볼 수 있었다. 다음 몬스터 잡으러 가자~! 2023. 3. 7.
Lord of SQL Injection 1단계 (gremlin) Lord of SQL Injection이라는 sql인젝션을 실습해 볼 수 있는 사이트가 있어 실습을 해보았다. 접속을 하니 게임을 시작하는것 처럼 UI가 디자인되어있어 더 흥미 있게 느껴졌다. 간단한 규칙과 "던전 입장" 이라는 단어가 진짜 게임하는 거 같았다. 일단 입장을 누르면 로그인을 해야되는데 간단한 회원가입 후 로그인을 했다. 입장해보니 몬스터 이름으로 된 각각의 스테이지? 들이 있었고 하나하나 풀어가는 것 같다. 오늘 처치할 몬스터는 gremlin이다. 입장해보니 간단한 php문으로 이뤄져 있는 것을 볼 수 있다. preg_match로 문자를 필터링 하고 있지만 싱글쿼터('), 더블쿼터("), 비교연산자 (or) 등이 필터링되어 있지 않아 ' or 1=1을 대입해보니 문제없이 들어갔다. 이러면.. 2023. 3. 7.
HUST 세미나 최종 발표 22년 홍익대 정보보안 동아리 HUST의 운영진으로 활동하면서 1년동안 공부했던 내용으로 실습한 내용을 2/11일 토요일에 강남 정우시티 4층 Hspace에서 졸업하여 현직에 계신 선배님들과 동아리 부원들에게 발표하는 시간을 가졌다. 아쉽게 이번 활동을 마치고 군복무를 하러 가지만 지난 활동 동안 같은 방향을 가지고 공부하는 사람들과 멘토들을 통해 많은 발전을 가지게 되는 시간이었다. 22년 프로젝트 계획 1학기( 22.3.1~22.6.18) 웹해킹 관련 강의 시청 후 기본지식 습득 매주 화요일 동아리 부원끼리 세미나 2학기 (22.9.3~23.2.11) 조원들 각각 데이터 베이스 공부 후 웹페이지 제작 워게임 사이트(wevhacking.kr , dvwa, WevGoat 등)를 이용한 실습경험 습득 서로.. 2023. 2. 14.
Webhacking.kr Challenge old-06 문제 풀이 문제 소스코드를 보면 먼저 아이디 guest와 비밀번호 123qwe를 20번 인코딩한 후 숫자들을 특수 문자로 치환하여 그 값들을 쿠키 값에 넣어주고 그 쿠키값들을 다시특수문자를 숫자로 치환하여 디코딩 20번후 출력하였다. 여기서 출력되는 아이디와 비밀번호가 admin과 nimda면 문제가 풀리는것을 알 수 있다. 그러면 일단 admin을 인코딩 20번후 숫자를 특수문자로 치환한 값을 user쿠키값에 넣어주면 된다. https://www.base64encode.org/ Base64 Encode and Decode - Online Encode to Base64 format or decode from it with various advanced options. Our site has an easy to us.. 2022. 11. 19.
Webhacking.kr Challenge old-05 문제 풀이 문제에 들어가면 로그인과 회원가입 버튼 2개가 보인다. 로그인을 누르면 login.php로 넘어가 로그인창이 뜨는것을 알 수 있다. 하지만 만들어 놓은 아이디가 없으니 회원가입을 해야 된다. 회원가입 버튼을 누르니 엑세스 거부 알림이 뜨면서 접속되지 않는다. 혹시나 해봐서 login.php를 join.php로 변경하여 접속 해 보았다. 다름없이 엑세스 거부 알림이 나오지만 처음과 달리 대문자가 사라진것을 볼 수있다. 개발자 모드를 실행하여 코드를 확인해보니 문자들을 암호화(?) 해놓은것이 보인다. 우선 가독성을 높이기 위해 https://beautifier.io/ 에 접속하여 코드를 정리 해 보았다. 정리된 코드중 중요한 if문을 해석하기 위해 개발자모드의 console 기능을 사용하면 좋다 . 코드를 .. 2022. 11. 18.
Webhacking.kr Challenge old-01 문제 풀이 old-01에 경우 소스코드만 읽어보면 간단하게 해결 할 수 있는 문제이다. 먼저 old-01에 들어가게 되면 검은색 화면에 레벨이 출력 되는것을 알 수 있다. view-source를 눌러보게 되면 이처럼 소스코드가 나오는데 두번째 php문을 읽어보면 user_lv이라는 쿠키값이 4보다 작고 3보다 큰 즉 4 > user_lv > 3 이면 문제가 풀리는것을 알 수 있다. 이제 f12를 눌러 개발자 모드를 실행 한 후 쿠키값을 변경해 보겠다. 기본값으로 1이 들어가 있는것을 볼 수 있는데 이를 4와 3 사이의 임의의 값으로 바꿔주면 필자는 이미 문제를 풀어서 already solved가 나오지만 처음 푼 상태라면 성공 메세지가 출력 될 것이다. 2022. 11. 18.
DVWA - SQL Injection (low,medium) 실습 SQL Injection 사용자 입력이 서버측에서 실행되는 SQL 쿼리에 삽입되어 사용자의 의도와는 다른 동작이 수행 되게하는 취약점이다. low level 2022. 10. 30.
DVWA - Insecure CAPTCHA (low,medium) 실습 CAPTCHA 현재 서비스를 사용하고 있는 주체가 사람인지 컴퓨터 프로그램인지 구분하기 위한 프로그램으로 평소 우리가 로그인이나 인증을 할때 볼 수 있으며 brute force 방지 , 추가인증 등의 용도로 쓰이고 있다. low level 먼저 변경할 비밀번호를 입력후 CAPTCHA인증을 한 다음 change 버튼을 눌러보자 버프스위트로 요청을 확인해본 결과 step = 1 이라는 파라미터가 눈에 띈다. 우리는 비밀번호만 입력했지 step이라는 입력값은 입력한적이 없기 때문에 개발자가 hidden값으로 넣어 놓은것 같다. 아직 step의 의미를 잘 모르므로 계속 진행해보자. CAPTCHA를 통과했다는 문구와 변경을 확정짓는 버튼이 나왔다. 변경 확정 버튼을 누른후 요청을 확인해 보면 step = 2로 바.. 2022. 10. 30.
728x90