해결된 질문
작성
·
381
·
수정됨
2
안녕하세요, 이제 막 강의를 신청하고 2시간 가량 들었습니다.
초반 두시간 정도는 실습 환경 구축 위주의 내용인데요, 이후 수업에서 배우는 내용에 대해 두 가지 궁금증이 생겨 질문드리게 되었습니다.
1. 한정된 분량의 강의 특성상 대체로 많이 사용되는 mysql, mssql, oracle 이 셋 db를 대상으로 수업을 진행하시는 것 같습니다. 혹시 mongo, dynamodb처럼 nosql을 사용하는 웹 어플리케이션의 경우 injection 수행 시 쿼리 문법만 바뀌는건지, 아니면 injection 방법 자체가 바뀌는건지 궁금합니다.
2. 현재 초급 수준이라 그런지 게시판을 injection 대상으로 삼아서 실습하는 걸로 예상이 되는데요, 게시판이 없고 회원가입/로그인 창 정도만 있는 웹 어플리케이션도 많은 것으로 알고있습니다. 저는 part1, part2 모두를 수강할 예정인데 게시판이 존재하지않고 회원가입/로그인 폼 정도만 있는 웹 어플리케이션에 대해서도 다양한 공격기법을 배울 수 있게되나요~?
감사합니다.
답변 1
0
안녕하세요. 답변이 늦어 죄송합니다.
질문1 답변) nosql의 경우는 관계형 데이터베이스가 아니기 때문에 RDBMS에서 사용되는 sql 문법과는 다릅니다. 예를들어, 몽고 db의 경우는 json 형태로 사용되죠. 따라서 공격 시 문법 자체가 다르게 됩니다.
질문2 답변)
아뇨, 회원가입과 로그인 창은 없고 "게시판"으로 실습을 진행합니다. MySQL 기반의 게시판, MSSQL 기반의 게시판, Oracle 기반의 게시판 총 3가지 게시판에서 실습을 합니다. 그리고 게시판에서 다양한 입력 값에 대한 공격 포인트들이 존재합니다. 일반적으로는 검색, 게시글 상세 보기의 입력 값도 있으며, 검색 시 컬럼 부분과 게시글 정렬 시 컬럼, 정렬 키워드가 있습니다. 이 모든 곳이 공격 포인트가 됩니다. 즉, 실무에서 발생될 수 있는 공격 포인트가 거의다 있다고 보시면 됩니다.