반응형

sql 5

SpringBoot) log4jdbc-log4j2 설정

Springboot와 Mybatis를 연동하여 사용 시 Mybatis는 내부적으로 JDBC의 PreparedStatement를 이용해서 SQL을 처리 이때 Mybatis가 처리하는 PreparedStatement에 사용된 '?' 값을 확인 및 SQL 로그를 보기 위해 log4jdbc-log4j2 라이브러리를 이용할 수 있다 log4jdbc-log4j2 설정 1. 의존성 주입 compile group: 'org.bgee.log4jdbc-log4j2', name: 'log4jdbc-log4j2-jdbc4.1', version: '1.16' 2. application.properties - DB driver 수정 * 변경 전 * 변경 후 spring.datasource.driver-class-name=net...

JAVA 2021.02.17

정보보안 - Blind SQL Injection

정보보안 - Blind SQL Injection Blind는 눈이 먼, 장님이라는 뜻을 가지고 있습니다. 장님이 길을 찾을 때, 지팡이로 더듬더듬 확인하면서, 가듯이 퀴리가 true, false인지만 가지고 원하는 결과를 찾아내는 방법입니다. Blind SQL Injection은 보통 쿼리의 결과를 직접적으로 눈으로 확인할 수 없을 때 사용합니다. SQL Injection의 결과가 페이지에 직접적으로 나타나지 않을 때, 쿼리의 결과가 참, 거짓만을 판별하여, 원하는 결과를 추출해 나가는 기법입니다. 출처 : 어서 와 해킹은 처음이지 칼리리눅스로 배우는 해킹과 보안 ** 비슷한 예제 로그인 창에 id를 ' or (SELECT length(username) FROM users Limit 0,1) = 8#로 ..

IT Security 2017.10.11

SQL injection - 칼리리눅스 sql injection 실습

SQL injection - 칼리리눅스 sql injection 실습 * 의도적인 query 문을 삽입하여 로그인을 하거나 정보를 캐내는 등의 비정상적인 데이터베이스 동작을 유도하는 공격입니다. * ex select * from users where username='$username' and password='$password' 구문 여기서 $password 변수에 1'or'1이 입력된다면 "username='$username' and passowrd='1'or'1' 이 되므로 값이 참이 됩니다. 이런 sql문의 취약점 때문에 패스워드를 몰라도 로그인이 가능한 공격합니다. * 로그인 창을 생성하기 위한 index.php

IT Security 2017.09.28

안드로이드 sqlite - SQLiteOpenHelper클래스

안드로이드 sqlite - SQLiteOpenHelper클래스안드로이드 경량 데이터베이스 sqlite sqlite를 이용하여 간단한 데이터베이스를 만들 수 있습니다. SQLiteOpenHelper는 데이터베이스 생성시 클래스를 상속받아 좀 더 편하게 데이터베이스와 테이블을 생성할 수 있습니다. 다른 액티비티는 SQLiteOpenHelper클래스를 상속받은 자바 객체를 선언해서 사용하기만 하면 됩니다. ** DBOpenHelper.javapublic class DBOpenHelper extends SQLiteOpenHelper{ public DBOpenHelper(Context context) { super(context, "myDB", null, 1); //myDB - 데이터베이스명 } @Override..

Android 2017.06.15

안드로이드 Database Insert

안드로이드 Database InsertSQLiteDatabase - 안드로이드에서 사용하는 경량의 데이터베이스 객체입니다.디바이스에 데이터가 저장되며 경량의 데이터베이스로 디바이스에서 효율적으로 작동합니다. ** MainActivity public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setTitle("고객 등록 database"); } public void clickOn(View v){ if(v.getId() =..

Android 2017.06.02
반응형