일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- SQL
- webhacking.kr
- 시스템프로그래밍
- Los
- WebHacking
- Writeup
- webhackingkr
- sqli
- SQL Injection
- 화이트햇콘테스트
- Python
- Linux
- XSS
- ctf
- rubiya
- 프로세스
- crosssitescripting
- lordofsqlinjection
- 운영체제
- CODEGATE
- 상호배제
- CCE
- hacking
- web
- 해킹
- ubuntu
- 웹해킹
- SQLInjection
- 알고리즘
- 시스템
- Today
- Total
목록분류 전체보기 (79)
One_Blog
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bxhIWF/btrP4Xr1GhL/tzQqjqEVIVFLzljIuPs13K/img.png)
오늘은 오랜만에 시스템 해킹에 관련한 글을 써보도록 하겠습니다. 오늘 알아볼 공격 기법은 ROP, Return Oriented Programming 입니다. 우선 ROP를 이해하기 위해 알아야 하는 사전 지식에 관해 짚고 넘어가겠습니다. PLT & GOT Return to Libc 함수 호출 규약 이것들에 대해 알고있다면, 바로 ROP를 시작해도 될 것입니다. 참고로 제가 설명하는 ROP는 64bit으로 설명됩니다. 시작 ROP ROP란 무엇일까요? ROP를 정말 간단하게 설명하자면, ret에 가젯과 함수의 주소를 연속적으로 연결해 공격자가 원하는 실행흐름을 프로그래밍 하는 것을 의미합니다. 하지만 이렇게 설명하면, 처음 ROP를 접하는 사람 입장에서 " 뭔소리야 ㅅㅂ" 소리가 나올 수 밖에 없습니다. ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bIucQE/btrPQwJwmGO/u3BJVtrX2JckSeQmOnmzPK/img.png)
오늘 알아볼 SQLI는 뭘까용~? 아하! Error Based SQLi로구나! ㅈㅅ 오늘 알아볼 SQL Injection 기법은 Error Based SQL Injecetion(이하 EB SQLI로 칭함) 이다. 해당 기법은 직접 DB로부터 데이터를 추출한다기보단, 서버에서 사용하는 DB에 대한 정보를 얻기 위해 사용하는 기법이다. 서버 SQL 쿼리문을 문법적으로는 오류가 없지만, 논리적으로 오류가 발생하는 쿼리문으로 만들어 서버에서 사용하는 DB에 관한 정보를 뱉어내도록 만드는 거다. EB SQLI는 다음과 같은 순서로 이루어진다. 1. Error 메시지 확인 2. Error 출력 활용 함수 선정 3. DB이름 확인 4. 테이블 이름 확인 5. 칼럼 이름 확인 6. 데이터 추출 사실상 EB SQLI는 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/baJTuq/btrPQgmcnsO/RIRAbCu7bOKZ0srT2pzaG1/img.png)
우리는 정보를 탈취하기 위해 서버에 SQL Injection 공격을 날리곤 한다. 하지만 우리가 하는 SQL Injection 공격이 항상 성공하는 것은 아니다. 성공을 한다고 해도, 항상 우리가 원하는 정보를 탈취할 수 있는 건 아니다. 우리가 항상 서버로부터 원하는 정보를 탈취하려면, 서버에서 사용하는 DB의 이름 서버에서 사용하는 DB - Table의 이름 Table - 칼럼의 이름 칼럼의 갯수 등등... 또한 SQL 구문이 서버에서 어떻게 작동하는가 필터링은 있는가 ? 필터링이 있다면, 어떤 문자를 어떤 방식으로 필터링하며, 사용자 입력에서 특정 문자열이 검출되었을 때, 사용자의 입력을 어떻게 처리하는가. 오늘은 우리가 SQL Injection을 성공 시키기 위해 알아야 하는 SQL Injecti..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/pXcEi/btrPKZXv56e/lYqu1XbSnNNjPemsS3UpA1/img.png)
오늘 업로드 할 블로그는 이전에 업로드한 웹 페이지의 코드 부분을 업로드 해보도록 하겠다. (코드 피드백 환영) 메인 페이지 코드 (로그인 페이지 코드) 로그아웃 페이지 (식별 인증 동시 로직 페이지) 식별 인증 분리 로직 페이지 식별 인증 동시 로직 페이지 (인증 Hash화) 식별 인증 분리 로직 페이지 (인증 Hash화) 식별 인증 동시 로직 페이지 (개행문자 포함) 오늘 어제는 제가 만든 웹 페이지에 대한 서버 영역 / 브라우저 영역에 대한 사진을 첨부하였습니다. 내일은 로그인 로직에 따른 SQL Injection에 대해 업로드 하겠습니다.