Mybatis 샵과 달러의차이

한라봉봉·2024년 2월 28일

https://gwamssoju.tistory.com/102

실제로 로그를 확인시,
#의 경우 내부적으로 string 변환이 이루어지나,
$의 경우 치환형태로 sql문이 작성되어 sql injection 공격에 취약한 것을 확인할 수있다.

    <insert id="write" parameterType="com.example.demo.vo.QnaVo" useGeneratedKeys="true" keyProperty="id">
        INSERT INTO `board`.`qna_board`
        (`title`,
        `user_id`)
        VALUES
            (${title},#{userId})
    </insert>

2024-02-28 16:42:51,193  INFO [jdbc.sqlonly] INSERT INTO board.qna_board
        (title,
        user_id)
        VALUES
            (test,dfdf)
profile
백엔드 개발공부 로그를 기록합니다

0개의 댓글