본문 바로가기

개인 공부128

[웹해킹] LOS 1 - (Gremlin) Lord of sql injection - gremlin 풀이 먼저 php문을 살펴보겠습니다. 우선 preg_match 함수를 통해, 'prob' , '_' , '.' , '()' 에 필터링이 되어있습니다. ( i는 필터링시 대 소문자를 구분하지 않는다는 뜻.) $query = "select id from prob_gremlin where id='{$_GET[id]}' and pw='{$_GET[pw]}'"; 그리고 쿼리문을 살펴보면, id와 pw가 둘 다 참일때, id를 prob_gremlin 테이블에서 select 해올 수 있습니다. if($result['id']) solve("gremlin"); 문제의 최종 목적은 solve()를 동작시키는 것인데, 동작하기 위한 조건은 id가 존재할때입니다. 따라.. 2021. 5. 29.
[웹해킹] 1주차 리뷰 웹 해킹(web hacking) 1주차 리뷰 웹 해킹 스터디를 시작하게 되면서, 배운 내용을 리뷰하기 위한 포스트입니다. 다른 분들이 이 글을 볼때는 불확실한 내용이 포함되어있을 수 있으므로 참고용 정도로 생각해주시면 감사하겠습니다. 1. 실습환경 설정하기 앞으로 포스트하게 될 웹해킹 실습은 Ubuntu에서 진행됩니다. 먼저 실습환경은 vmware에서 ubuntu를 설치해서 진행됩니다. https://www.vmware.com/go/getworkstation-win 실습환경인 우분투를 설치하는 과정은 상세하게 다루는 글이 많기때문에 생략하도록 하겠습니다. https://releases.ubuntu.com/20.04/ Ubuntu 20.04.2.0 LTS (Focal Fossa) Select an imag.. 2021. 5. 10.
[C언어/BOJ] BOJ 1158 요세푸스( 원형연결리스트 구현 ) 백준 1158번 요세푸스 문제풀이 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열은 이다. N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성하시오. 풀이 접근 크기가 N인 원형이중연결리스트를 구현하고 3칸씩 .. 2020. 12. 14.
[C언어/BOJ] BOJ 5555번 반지 (문자열 포함여부 찾기) 백준 5555번 반지 풀이 / C언어 중간고사를 앞두고 문자열 문제를 연습중에 A문자열이 B문자열에 등장하는지를 구하는 알고리즘을 활용할수 있어서 한번 풀어보았습니다. 조금 특이한점은 "반지" 에 문자열을 적었기때문에 문자열이 순환된다는 것입니다. ( 끝과 시작이 연결되어있습니다) 문제를 풀이하기전에 문자열 검색에 대한 쉬운 문제 두가지를 먼저 풀어보겠습니다. 두 문자열의 포함관계를 구하는 알고리즘을 실습을 통해 익히기 두 문자열의 포함관계를 구하는 문제입니다. 먼저 입력받는 str1에 str2가 포함되어있는지를 판단해주면 됩니다. 간단한 알고리즘이지만 한번 떠올려볼까요? 아이디어 생각하기 아이디어를 떠올리는것부터 매우 쉽게 접근할수있습니다. 두번째 입력 문자열 str2를 비교 문자열로 하여서, str2.. 2020. 10. 16.