강의

멘토링

로드맵

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của mmeennss11183
mmeennss11183

câu hỏi đã được viết

Hack web & mã hóa an toàn mà các nhà phát triển web và người mới bắt đầu bảo mật thông tin phải biết

Tấn công bỏ qua xác thực là gì?

select * from member where id= '1' or '1'='1' --

Viết

·

593

1

SQL 인젝션 관련하여 질문드립니다.

제목처럼 -- 나 # 등의 주석처리로 로그인을 우회할 수 있는 경우는

insequre_website 의 login.php 에서 로그인을 처리하는 로직 (하단)처럼 

id값과 pw 값을 동시에 받아서 query 로 넘기는 경우만 해당하는거죠? 

  $query = "select * from members where id='{$id}' and password='{$password}'";

즉, 하단의 로직처럼  일단 id가 있는지 확인하고, 

id가 있을 경우 pw값 일치여부를 보는 경우엔 주석처리로 로그인 우회가 안되는게 맞는거죠? 

감사합니다! 

<?php
 
        session_start();
 
        $connect = mysqli_connect("localhost"""""") or die("fail");
 
        //입력 받은 id와 password
        $id=$_GET['id'];
        $pw=$_GET['pw'];
 
        //아이디가 있는지 검사
        $query = "select * from member where id='$id'";
        $result = $connect->query($query);
 
 
        //아이디가 있다면 비밀번호 검사
        if(mysqli_num_rows($result)==1) {
 
                $row=mysqli_fetch_assoc($result);
 
                //비밀번호가 맞다면 세션 생성
                if($row['pw']==$pw){
                        $_SESSION['userid']=$id;
                        if(isset($_SESSION['userid'])){
                        ?>      <script>
                                        alert("로그인 되었습니다.");
                                        location.replace("./index.php");
                                </script>
<?php
                        }
                        else{
                                echo "session fail";
                        }
                }
 
                else {
        ?>              <script>
                                alert("아이디 혹은 비밀번호가 잘못되었습니다.");
                                history.back();
                        </script>
        <?php
                }



출처: https://chamggae.tistory.com/83 [silqia 공부 블로그]

모의해킹인젝션

Quiz

SQL Injection이란 무엇인가요?

SQL 언어 자체를 변조하여 데이터베이스 기능을 마비시키는 행위

사용자 입력란에 악의적인 SQL 구문을 삽입하여 비정상적인 데이터베이스 쿼리를 실행시키는 취약점

데이터베이스 관리 시스템(DBMS)에 직접 침투하여 데이터를 탈취하는 해킹 기법

웹 애플리케이션 개발 도구를 사용하여 SQL 쿼리를 최적화하는 기술

Câu trả lời 2

0

[실습2-2] 인증우회에서

실습 1 admin' or '1'='1 입력시

로그인이 안되내요

어느 부분 확인이 필요한지 궁금합니다.

0

crehacktive님의 프로필 이미지
crehacktive
Người chia sẻ kiến thức

안녕하세요.

이 경우에도 SQL 인젝션 취약점이 존재할 경우 인증 우회, 데이터 조회 공격이 가능합니다.

말씀하신 인증우회 패턴으로는 되지는 않으나 , 공격 방식을 조금 다르게하면 공격이 가능합니다.

때문에 SQL 인젝션에 대한 취약점을 방어하시는 것이 1순위가 되겠죠.ㅎㅎ

Hình ảnh hồ sơ của mmeennss11183
mmeennss11183

câu hỏi đã được viết

Đặt câu hỏi