분류 전체보기(347)
-
[Normaltic's 취업반 과제] 게시글 삭제하기
open_contents.php일단.. title과 writed_date를 쿼리문으로 보내서 그 두가지를 기준으로 게시물을 삭제할 예정이라서 그 두 가지를 delete_contents.php로 보낼 준비를 한다.일단 이 것 두개도 다른 곳에서 GET방식으로 받아오는 것이기 때문에 받아오고$title = $_GET['title'];$writed_date = $_GET['writed_date'];삭제하기 버튼을 누르게 되면삭제하기해당 함수를 부르게 된다. confirmation()그러면 js가 실행되게 되는데, 정말 삭제하시겠습니까라는 confirm창이 뜬다.var answer = confirm("정말 삭제하시겠습니까?")그 창에서 확인을 누르면 삭제완료 쪽으로if (answer) { alert("..
2024.05.15 -
[Normaltic's 취업반 과제] js Keylogger
keylogger.php사용자로부터 키 입력을 받아 txt파일에 적어둔다.login.php키 입력을 받아서 login버튼을 눌렀을 때 해당 입력을 공격자에게 보낼 수 있도록 하였다.[생략][생략] ref. https://www.hahwul.com/2016/06/16/web-hacking-making-xss-keyloggerxss/ [WEB HACKING] Making XSS Keylogger(XSS Keylogger 만들기)오늘은 공격을 통한 영향력 측면에서 바로 사용자의 키 입력을 가로채는 Keylogger를 간단하게 만들어볼까합니다. 물론 악용하시면 안됩니다. 연구적인 측면에서 해보시길 바랍니다.www.hahwul.com
2024.05.14 -
[Normaltic's 취업반 과제] js Cookie Hijacking
우선 서버가 현재 하나밖에 없기 때문에 공격자 서버를 따로 두지 않고 자기 자신으로부터 탈취하여 자기자신에게 정보를 가져오게끔 하였다. index.php임시의 이미지(사용자에게는 보이지 않는)를 하나 생성하여 그 이미지를 통해 공격자의 php코드로 cookie를 전송한다.해당 코드는 로그인 이후 jwt가 생성된 후 실행된다.[생략] [생략]cookiestealer.php공격자의 코드.c라는 쿠키를 담을 변수를 받아 log.txt라는 파일에 적는다.지금은 서버가 하나 뿐이라서 자기 자신에게 돌렸지만 공격자의 서버에게 돌리게 되면 저 파일은 공격자의 서버로 들어가게 된다. ref. https://null-byte.wonderhowto.com/how-to/write-xss-c..
2024.05.14 -
[Normaltic's 취업반 과제] 게시글 수정하기
앞서 모든 게시글의 구조를 뜯어고쳤다.. 이전 모습은 전혀 없으니 참고 우선 테스트 게시글을 등록테스트 게시글을 잘 받아오는 것을 볼 수 있다.수정하기 탭을 클릭하나도 빠짐 없이 변경해보고일단 변경된 타이틀로 잘 나오는 것을 확인내용과 사진도 변경 확인 완료사진은 제가 다니는 액션스쿨 로고를.. index.php서두에 적어놓은것과 같이 게시판의 구조를 완전히 뜯어 고쳤다.그래서, 고친 부분은 이 부분이다.index.php 위에 get_category_list.php를 덮는 형식으로 했었다.그러니까 종이 두 장을 겹쳐놓는데 index.php에서 출력된 화면이 아래에 깔리고 그 위에 get_category_list.php에서 출력된 화면이 그 위에 깔린다.그렇게 두개를 겹쳐 놓았던 것을 분리하여 게시판으로써..
2024.05.12 -
[PHP] GET방식으로 parameter 전달 시 space(공백) 포함하기
필자는 게시판을 만들다가 DB중 title을 기준으로 해서 쿼리문을 구성하고 있었는데,title 중에 공백(스페이스바)가 포함된 문자열이 제법 많았다.그런데 GET방식으로 parameter를 전달하다가 공백 앞에서 문자열이 끊겨 공백 앞 문자열까지만 전달이 되었다.그래서 해결 방안을 모색했고, 해당 해결 방안은공백을 인코딩하여 parameter를 전송하는 것이었다.공백은 %20으로 인코딩이 된다 php에서는 해당 과정을 아주 쉽게 사용할 수 있도록 구현해 놓은 것이 있었는데, 그것이 바로urlencode() 함수였다.적용 전 코드와 적용 후 코드의 차이를 살펴보자. 적용 전 코드$writer = $sql_row['writer']; $writed_date =$sql_row['writed_date'];..
2024.05.11 -
[Normaltic's CTF] Burp Suite Prac 4
You are Not AdminAdmin이 아니라고 합니다. Admin이 되어줍시다. Decoder + Intercept를 이용한 풀이해당 문제는 Base64로 인코딩 되어있으므로, 디코딩을 해야 풀 수 있는 문제이다.첫 번째로 Intercept를 한다.그리고 우선 History를 보면, Level에 알 수 없는 문자열이 있는데, 우측을 보면 해당 문자열이 이미 Base64로 인코딩이 되어있고, 디코딩을 하면 user라는 문자열임을 알 수 있다. 이 과정은 Decoder 탭에서도 똑같이 확인할 수 있다.참고로 %3D는 = 기호와 같다.그럼 이제 admin이 되기 위해 admin이라는 글자를 Base64로 인코딩하여 넣어보자.admin은 Base64로 인코딩하면 YWRtaW4= 라는 문자열이 만들어진다.해..
2024.05.10