본문 바로가기
반응형

전체 글87

Php로 웹 개발하기 : 마이페이지(2) 저번 포스팅에 이어서 마이페이지 조회 / 수정 기능을 마무리지어보자. ① 데이터 조회 우선 마이페이지에 들어갔을 때 아이디와 생일을 확인하기 위해 MySQL에 연결하여 데이터를 가져온 후, 이를 placehoder 값으로 넣어주자. [mypage.php] mypage_update.php를 위와 같이 작성한 후, 현재 비밀번호가 잘 전달되는지 확인해보자. 업데이트 버튼을 누르면, 위와 같이 현재 비밀번호를 입력해달라는 창이 뜬다. 비밀번호를 아무거나 입력하면, 인자가 잘 전달되는 것을 확인할 수 있다. ③ 인증 과정 및 데이터 변경 이제 입력받은 비밀번호가 해당 유저의 비밀번호와 일치한다면, 데이터를 변경해주어야 한다. 2021. 12. 10.
Php로 웹 개발하기 : 마이페이지(1) 드디어 게시판 개발 대장정이 끝이 났다. 무려 16개의 포스팅... 이제 웹 개발편에서는 마이페이지와 문의 게시판만 추가로 구현하고 모의해킹_이론 편에서 공부했던 것들을 직접 실습해보고, 보완하는 시간을 가지려고 한다. 마이페이지는 개인 정보를 조회 / 수정할 수 있도록 만들 것이다. 개인 정보를 조회할 수 있는 mypage.php 파일과 개인 정보를 수정할 수 있는 mypage_update.php를 만들어주었다. 로그인 후 나오는 메인 페이지 창에서 마이페이지로 가는 버튼을 추가해준다. [mainpage.php] 2021. 12. 9.
Lord of SQL Injection : Giant[14] [Level 14. Giant] Sol → ?shit=%0B 이번 문제는 from과 prob_giant가 붙어있어서 파라미터로 공백을 넣어주어야 한다. 그런데 \n, \r, \t가 모두 필터링되어있다. 공백 대신 넣을 수 있는 후보들을 살펴보자. ① HT (Horizontal Tab) → %09 ② LF (Line Feed) → %0A ③ VT (Vertical Tab) → %0B ④ SP (Space) → %20 ⑤ + → %2B 필터링은 통과하지만, 이 문제에서는 유효하지 않은 기호이다. ⑥ 주석 → /**/ 길이가 1보다 크기 때문에 사용할 수 없다. 2021. 12. 8.
Php로 웹 개발하기 : 게시판(16) - 날짜 기간 조회 기존 포스팅에서 작성자, 제목, 내용, 날짜로 검색할 수 있는 기능을 구현했었다. 게시판(2) : [모의해킹_실습] - Php로 웹 개발하기 : 게시판 만들기(2) - Search 게시판(3) : [모의해킹_실습] - Php로 웹 개발하기 : 게시판 만들기(3) - Option Search select option으로 네 가지 선택사항을 보여줬는데, 그중 날짜 검색은 아예 기간을 정해서 조회할 수 있도록 만들 것이다. 작성자 제목 내용 option은 위처럼 3가지로 수정해주고, 기간을 설정해서 조회할 수 있는 기능을 구현해보자. 이모티콘은 fontawesome에서 불러왔고, input type는 date로 주었다. CSS는 무시하고, 기능부터 구현해보자. type를 date로 주면, 자동으로 년/월/일 .. 2021. 12. 7.
Php로 웹 개발하기 : 게시판(15) - 파일 다운로드 게시판 만들기(13) ~ (14)에서 파일을 업로드하고, 확인하고, 삭제하는 기능까지 구현을 해보았다. 이번 포스팅에서는 파일을 다운로드하는 기능을 구현해볼 것이다. 원래는 file_download.php 파일을 하나 만들어주고, 삭제 기능과 똑같이 파라미터를 넘겨준 후 header를 사용해서 파일 다운로드를 구현하려 하였으나, html 태그를 사용하면 너무 간단하게 구현이 가능했다. 2021. 12. 6.
Lord of SQL Injection : Bugbear[13] [Level 13. Bugbear] Sol → ?pw=52dc3991 13단계는 12단계와 같지만, or / and / like / spacebar 등 필터링되는 문자가 훨씬 많다. 그래서 우리는 다음 문제들을 해결해야 한다. Q1) 작은따옴표(')와 등호(=)와 like를 사용할 수 없는데 id = 'admin' 또는 id like char(97, 100, 109, 105, 110))을 어떻게 쓸까? Q2) ascii와 or을 사용할 수 없는데 ascii(substring(pw, n, 1)) > m 또는 ord(substring(pw, n, 1)) > m를 어떻게 쓸까? 그 외의 문제들은 or 대신 ||, and 대신 &&(%26%26), substring 대신 mid, 스페이스바 대신 엔터(%0A)를.. 2021. 12. 5.