본문 바로가기

전체 글70

[사이버범죄론] Chapter1,2 * 교재 : 사이버 범죄론 (이원상 저) Prologue 범죄의 이론적 정의 - 구성요건 해당성 (형별이 규정된 법률이 있어야 함) - 위법성 ( 형법뿐 아니라 법질서 전체에서 위법하다고 평가 받아야 함) - 책임성 ( 가해행위를 한 사람에게 비난을 할 수 있어야 함) Chatper 1. 사이버범죄 이전의 정보화 역기능 분류 Ⅰ. 입장하기 “정보화 사회”와 “위험사회” : 정보통신기술의 발달과 그로 인해 발생하게 되는 사회에 내제되게 되는 위험 “정보화 역기능” = 정보화 사회 + 위험 사회 - 정보화 사회가 추구하는 순기능에 대한 반작용으로 발생하게 되는 현상 - 정보화의 진전에 따라 나타나는 컴퓨터 및 인터넷 등 정보통신 수단을 이용하거나 정보통신 수단에 대하여 행하여지는 해킹, 바이러스 유포 등 각.. 2021. 8. 17.
[시큐어코딩] 신뢰되지 않는 URL 주소로 자동접속 연결 사용자로부터 입력되는 값을 외부사이트의 주소로 사용하여 자동으로 연결하는 서버 프로그램 -> 피싱(Phishing) 공격에 노출되는 취약점 공격자는 해당 폼의 요청을 변조함으로써 사용자가 위험한 URL로 접속할 수 있 도록 공격 - 자동 연결할 외부 사이트의 URL과 도메인은 화이트 리스트로 관리 - 사용자 입력값을 자동 연결할 사이트 주소로 사용하는 경우에는 입력된 값이 화이트 리스트에 존재하는지 확인 EX) 외부로 연결할 URL과 도메인들은 화이트 리스트를 작성한 후, 그 중에서 선택하도록 함으로써 안전하지 않은 사이트로의 접근을 차단 //이동 할 수 있는 URL범위를 제한하여 피싱 사이트등으로 이동 못하도록 한다. String allowedUrl[] = { "/main.do", "/login.jsp.. 2021. 8. 9.
[시큐어 코딩] 위험한 형식 파일 업로드 서버 측에서 실행될 수 있는 스크립트 파일(asp, jsp, php 파일 등)이 업로드가능하고, 이 파일을 공격자가 웹을 통해 직접 실행시킬 수 있는 경우, 시스템 내부명령어를 실행하거나 외부와 연결하여 시스템을 제어할 수 있는 보안약점 - 화이트 리스트 방식으로 허용된 확장자만 업로드를 허용 - 파일명과 확장자를 외부사용자가 추측할 수 없는 문자열로 변경하여 저장 - 저장 경로는 ‘web document root’ 밖에 위치시켜서 공격자의 웹을 통한 직접 접근을 차단 - 파일 실행여부를 설정할 수 있는 경우, 실행 속성을 제거 ex) 업로드할 파일에 대한 유효성 검사 String fileName = multi.getFilesystemName("filename"); if (fileName != null).. 2021. 8. 9.
[시큐어코딩] SQL Injection >> SQL 삽입 데이터베이스(DB)와 연동된 웹 응용프로그램에서 입력된 데이터에 대한 유효성 검증을 하지 않을 경우, 공격자가 입력 폼 및 URL 입력란에 SQL 문을 삽입하여 DB로부터 정보를 열람하거나 조작할 수 있는 보안약점 > 보안대책 - PreparedStatement 객체 : DB에 컴파일 된 쿼리문을 전달하는 방법 - DB 커리에 사용되는 외부 입력값에 대해 특수 문자 및 쿼리 예약어 필터링 - Struts, Spring 등과 같은 프레임워크 사용 시 외부 입력값 검증모듈 및 보안 모듈을 상황에 맞추어 적절하게 사용 *PreparedStatement 객체 지원 JAVA : JDBC Python : PDO EX1) 외부로부터 입력받은 gubun의 값을 SQL 쿼리 생성하는 데 사용하기 Pre.. 2021. 8. 3.
[OpenCV] 동영상 분석 - 동영상에서 열대어가 등장하는 부분 검출하기 * 교재 : 파이썬을 이용한 머신러닝, 딥러닝 실전 앱 개발 https://github.com/wikibook/python-ml-app-dev/tree/master/ch3/video * 해당 코드들을 파이썬 파일로 저장 (example.py) 후 아나콘다 프롬프트 창에서 실행 python example.py 1. 웹캠 이미지 실시간 출력 * 사용 함수 - VideiCapture(0) : 표준 웹 카메라 사용 - read() : 이미지 읽어 들이기 - resize() : 이미지 사이즈 조절 - imshow() : 윈도우에 이미지 출력 - waitKey() : 해당 시점에 눌린 키 추출, esc/enter키 일 경우 반복문 종료 import cv2 import numpy as np # 웹 카메라로부터 입력받.. 2021. 8. 2.
[포렌식] 안드로이드 루팅하는 법 * 참고 사이트 https://www.youtube.com/watch?v=iqZ7q0Rhpm4 현재 진행하고 있는 프로젝트가 모바일 안티포렌식이라 루팅이 필요했다. 루팅 좀 무서웠는데 생각보다 엄청 쉬움! 단, 삼성페이는 루팅 후 사용할 수 없으니 주의하자. 안드로이드 루팅이란, 최상위 ROOT 권한을 얻어 기기의 생산자, 판매자가 걸어놓은 제약을 해지하는 것이다. [안드로이드] 먼저, 자신이 루팅할 핸드폰의 모델번호를 확인한다. [환경설정]-[휴대전화 정보]에서 모델번호를 알아놓자. 여기서 모델번호는 sm-a800이다. 그리고 환경설정에서 빌드번호를 검색해서 연타하자. 연타하면 개발자 모드가 켜진다. 개발자 모드에 들어가 OEM 잠금 해제와 USB 디버깅을 키자. 그런 다음 핸드폰을 끄고 키면서 볼륨 .. 2021. 7. 30.