본문 바로가기

전체 글

(185)
[Java Secure coding] 자바 시큐어코딩 기법 (2) - SQL Injection SQL Injection - SQL 삽입 공격 - 보안상 취약점을 이용해 악의적으로 임의의 SQL문을 삽입해 DB가 비정상적인 동작을 하도록 하는 것 - SQL 인젝션 공격에 의해 DB가 노출된 사례가 존재함 - 사용자 입력 값에 필터링이 제대로 적용되어 있지 않은 취약점을 악용한 공격기법임 입력 데이터 검증 및 표현 - 공격자가 쿼리를 조작할 수 있는 문자열을 입력해 인가되지 않은 사용자가 DB 데이터를 무단으로 조회 또는 삭제할 수 있음 - preparedStatement가 아닌 statement로 쿼리에 아래와 같이 입력되어 있는 경우 "SELECT * FROM USER WHERE id = '" + userVO.getUserId( ) + "' and pw = '" + userVO.getUserPw(..
[Java secure coding] 자바 시큐어코딩 기법 (1) Secure coding 사용자가 입력한 데이터는 신뢰할 수 없음을 전제로 개발에 착수해야 함 - 보안을 강화하기 위한 코딩이라고 보면 됨 - 웹 애플리케이션에 취약한 부분을 보완하고 강화하기 위함 - 운영과 유지보수에서도 굉장히 중요한 내용으로 판단됨 --> 행정자치부 한국인터넷진흥원(KISA)에서 발표한 SW 보안 가이드에 따라 7가지 분류가 존재함 한국 인터넷진흥원 기술 안내서 가이드 https://iamfreeman.tistory.com/entry/한국인터넷진흥원KISA-기술안내서-가이드 2020 자바 시큐어코딩 기준 https://www.kisa.or.kr/public/laws/laws3_View.jsp?cPage=6&mode=view&p_No=259&b_No=259&d_No=55&ST=T&SV..
HomeBrew Mysql 설치 https://junhobaik.github.io/mac-install-mysql/ 간단하게 MySQL 설치하기 (Mac, HomeBrew) MacOS 재설치 후 기본적인 설정을 하면서 간단히 정리해본 MySQL 설치 과정 MySQL 설치 brew 명령어를 위한 HomeBrew 패키지 관리자 미설치시 아래 명령어를 통해 설치 필요 MySQL 설정 아래 명령어로 mysql junhobaik.github.io
[Mac] mysql homebrew로 설치 https://velog.io/@inyong_pang/MySQL-설치와-초기-설정 [MySQL] 설치와 초기 설정 for macOS MAC에서 MySQL설치방법은 MySQL Community Server dmg파일을 다운받아 설치하는 방법과 Homebrew로 MySQL 패키지 다운받아 설치하는 방법 두가지이다.MySQL 공식 dev 페이지에서 MySQL Community Server 를 다운받는다. velog.io
[Oracle] SQL 복수행 함수 (그룹 함수) - GROUP BY, HAVING, ROLLUP GROUP BY 절 - 그룹으로 묶기 위함 - 만약 그룹 조건이 여러 개일 경우 GROUP BY 절에 이어서 작성하면 됨 예시 1) 부서별 월급 평균을 구하라. SELECT DEPTNO, AVG(NVL(sal, 0)) FROM emp GROUP BY DEPTNO; 예시 2) 부서와 직업별 월급의 평균을 구하라. (단, 부서 번호와 직업에 따라 오름차순으로 정렬하라) SELECT deptno, job, AVG(NVL(sal, 0)) "AVG" FROM emp GROUP BY deptno, job ORDER BY 1, 2; - 주의사항 SELECT 절에 사용된 그룹 함수 이외 컬럼이나 표현식은 반드시 GROUP BY 절에 사용되어야 함. 한 마디로 그룹핑 대상이 아닌 컬럼을 SELECT 절에 작성해서는 안 ..
[Oracle] SQL 복수행 함수(그룹 함수) 그룹(Group) 함수 - 한 번에 여러 건의 데이터가 함수로 입력됨 - * 사용 시, Null 포함 - 컬럼 이름 사용 시, Null 값 제외한 컬럼 작업 COUNT( ) 함수 - 입력 데이터의 총 건수 반환 - * : Null 포함 / 컬럼명 : Null 미 포함 SUM( ) 함수 - 데이터들의 합계 계산 AVG( ) 함수 - Null 값은 자동으로 제외하고 평균 값이 계산됨 - 고로 Null 값을 가진 전체 인원의 평균 계산시 해당 부분을 수정해 다시 조회해야 함 - Null 값을 9으로 대체하는 방법도 있음 [ex] SELECT count(*), sum(comm), avg(nvl(comm, 0)) FROM emp; MAX( ) 함수 / MIN( ) 함수 - MAX : 최댓값 / MIN : 최솟값 ..
[Oracle] 단일행 함수 - 정규식(Regular Expression) (2) ※ 오라클 11g에 추가된 정규식 함수 REGEXP_COUNT 함수 REGEXP_COUNT(컬럼 또는 문자열, '카운트 대상 문자' [, 카운트 시작 위치] [, 정규식 옵션] ) - 특정 문자 카운트 - 카운트 대상 문자를 . (점)으로 할 경우 문자열 길이 카운트 검색 세 가지 방법 SELECT text, REGEXP_COUNT(text, 'aa') "method 1", REGEXP_COUNT(text, '[a]{2}') "method 2" , REGEXP_COUNT(text, '(a)(a)') "method 3" FROM T_REG;
[CentOS] Alias https://jootc.com/p/201809161819 리눅스 alias 명령어 - 특정 명령어를 별명으로 지정 - JooTC 리눅스 alias 명령어 자주 입력하는 긴 명령어를 별칭으로 저장하여 번거롭게 입력하는 것을 해소해주는 명령입니다. alias의 별칭 등록은 간단합니다. 만약 명령어에 옵션이나 인자 값이 하나 이 jootc.com