본문 바로가기

분류 전체보기93

11. 접근통제 보안위협 및 보안대책 패스워드 공격 사전공격(Dictionary Attack) 개인 정보 등을 알고 있으면 매우 효율적인 공격 방법 무차별공격(Brute-force Attack) 모든 조합의 경우의 수를 시도하는 공격 방법 레인보우 테이블 미리 만들어 놓은 해시테이블을 이용한 공격 사회공학 공격 인간기반 훔쳐보기, 협박 메일, 따라 들어가기, 쓰레기통 뒤지기 주의를 기울이고 보안인식 교육을 주기적으로 실시 ICT 기반 피싱 개인정보 + fishing 파밍 DNS 탈취(공격탐지 곤란) 스미싱 SMS + phishing 스피어 피싱 신뢰할 만한 발신인으로 위장해 정보를 요구 APT 공격(특정인) 관련 은닉채널 허가되지 않은 방식으로 정보를 받는 방법 대응 방안 HIDS 탐지, 통신대역폭에 엄격한 제한 방사 방출되는 전기적 신호를.. 2023. 4. 15.
SQL SQL 자료를 처리하는 용도로 사용되는 구조적 데이터 질의 언어 DB한테 데이터를 처리(가져와라, 수정해라, 추가해라 등)해라 하는 언어 SELECT 테이블에 있는 데이터를 조회할 때 사용하는 명령어 select [컬럼 이름] from [테이블 이름] DB는 많은양의 데이터가 들어있어서 전부 조회하지 않고 조건을 걸어준다. select [컬럼 이름] from [테이블 이름] where (컬럼이름 = 데이터) 로그인 인증 과정 로그인 인증은 식별과 인증이라는 과정이 필요하다. 식별 : 많은 데이터 중에서 특정한 데이터를 가려내는 것 / 식별정보 : ID(중복 X) 인증 : 그 사람이 맞는지 확인 / 인증정보 : PW 1) 식별과 인증 동시 진행 CASE member라는 테이블이 있고 아이디와 비밀번호를 입.. 2023. 4. 14.
10. 접근통제 모델 접근통제 모델 MAC 주체와 객체의 등급을 비교하여 접근권한을 부여 중앙집중형 보안관리 비용이 많이 들어간다, 상업적인 환경에 적용이 힘듦 DAC 접근하고자 하는 주체의 신분에 따라 접근권한을 부여 분산형 보안관리 유연한 접근 제어 서비스를 제공 뭘웨어에 취약함 임의적 접근 통제 기법 접근제어 행렬(ACM, Access Contro Matrix) 효과적으로 권한 부여 정책을 정의할 수 있음 주체와 객체의 수가 많아질수록 행렬의 크기가 상당히 커진다.(관리가 어려움) 자격목록(Capability list, Capability Tickets, Capability Table, 권한 리스트) Capability Tickets은 ACLS의 편리한 점 및 불편한 점과 서로 반대 Capability Table의 예로.. 2023. 4. 13.
9. 사용자 인증 인증 메시지 인증 메시지의 이상유뮤 확인 사용자 인증 다른 사람 처럼 가장할 수 없는 경우 사용자 인증 지식 기반 인증(What you know) 알고 있는 어떤 것 다양한 분야에서 사용 가능, 검증 확실성, 관리비용의 저렴 패스워드 망각, 추측 가능 패스워드, 핀 시도 응답 개인 식별 프로토콜 자신이 알고 있다는 사실을 간접적으로 보여주는 프로토콜 영지식 개인 식별 프로토콜 비밀 정보를 알고 있다는 사실을 직접 또는 간접으로 입증하는 프로토콜 소유 기반 인증(What you have) 소유에 기반 일반적, 입증된 기술, 생체 인식방식보다 더 경제적 소유물이 없을경우 인증이 어려움, 복제 가능, 자산 관리 기능 요구 메모리 카드(토큰), 스마트 카드, OTP 개체(생물학적) 기반 인증(What you a.. 2023. 4. 12.
[2주차-1] 회원가입 기능 만들기 1 로그인 페이지 까지는 완성이 되었고 이제는 회원가입 기능을 만들 것이다. 구현해야 할 기능들은 lD 중복검사와 회원가입 로직이고 주소 검색기능은 나중에 추가할 예정이다.(DB에 주소를 아직 추가 안 했다.) 가장 먼저 loginpage에 회원가입 폼을 추가시켜야 한다. 회원가입 버튼을 누르면 create.php로 이동을 하게 된다. 간단한 회원가입 페이지이다. DB에는 admin이라는 아이디가 있으므로 이걸로 중복검사를 하고 비밀번호의 입력값이 맞는지 확인한다. 값을 입력하고 회원가입 버튼을 누르면 process_create.php에서 기능을 수행한다. 2~4 create.php에서 값 받아오기 8~10 아이디랑 비밀번호가 입력되어 있는지 확인한다. 입력값이 없으면 if문이 실행된다. 13~20 $id_.. 2023. 4. 11.
인증 우회 케이스 Cookie 변조 cookie를 이용하여 로그인을 성공한 화면 쿠키를 변조하여 다른 사용자로 전환하거나 권한을 상승시킴으로써 공격하는 데 사용할 수 있고 위에 있는 로그인 화면처럼 쿠키값을 내가 원하는 대로 변경을 할 수 있다. 대표적인 공격방법은 XSS와 Cookie Sniffing을 이용한 쿠키 하이재킹이 있다. Process Jump 인증 과정을 건너뛰는 공격 간단한 페이지를 만들어봤다. 처음 페이지에 접속해서 인증을 받으려고 Auth 버튼을 눌렀다. pw를 입력하라고 하는데 우리는 모르니까 이것저것 입력해 본다. 하지만 맞을 일이 없고 url이 1, 2 순서대로 진행하는 걸 보고 3으로 바꿔본다. 3으로 변경하니까 넘어가졌다. 나는 pw를 틀렸는데 관리자 페이지로 넘어가서 코드를 알아냈다. 이처럼.. 2023. 4. 10.
8. 접근통제 접근통제 개념 컴퓨터 시스템의 사용을 위해서 인증과정을 성공적으로 마친 사용자에 대해 컴퓨터 시스템에 대한 접근허용 여부를 결정하는 작업 비인가된 방법으로 자산에 접근하는 행위를 방지해야 한다. 실수 또는 잘못된 접근으로 인하여 자산을 훼손하는 행위를 방지해야 한다. 주체 능동적 개체 객체 수동적 개체 접근 읽기, 쓰기, 추가, 생성, 삭제 등 접근통제 절차 식별 주체의 활동 인증 증명 활동 인가 권리를 부여 접근통제 요구사항 사용자 인증 기능이 전단에 존재함을 전제로 한다. 최소의 권한만 부여한다. 시스템의 기능을 다수의 개인들에게 나눠야 한다. 2023. 4. 8.
7. 키와 난수 키 키가 크면 클수록 무차별 공격에 강하다. 키는 평문과 같은 가치를 갖고 있다. 암호키는 서버 또는 하드웨어 토큰(보안 토큰)에 저장된다 키의 종류 세션키 한 번만 사용되는 키 마스터키 반복적으로 사용되는 키 솔트 사전 공격이나 레인보우 테이블을 막기 위해서 사용 난수의 특징 난수는 무작위고 예측이 불가능하며 재현이 불가능하다. RNG, PRNG 2023. 4. 8.
로그인 인증 웹서비스는 로그인을 통해서 다양한 서비스를 제공한다. 이를 위해서 웹서버는 프로토콜과 클라이언트를 사용해서 통신을 하게 되고 로그인한 계정을 보고 그것에 맞게 서비스를 제공한다. 웹서버는 클라이언트의 인증 정보를 가지고 있는 쿠키와 세션을 이용하여 클라이언트를 구별하게 된다. 쿠키(Cookie) 클라이언트가 웹 서버에게 보내는 작은 데이터, Key와 Value로 구성되있다. HTTP에서 상태를 유지하기 위해서 쿠키를 사용하고 서버는 쿠키를 통해서 클라이언트를 식별하게된다. 만약에 클라이언트가 악의적인 마음이 있다면 쿠키 정보를 변조해서 서버에 요청을 보낼 수 있다. 이러한 과정을 쿠키 변조 라고 하고 이를 방지하기 위해서 세션을 이용한다. 세션(Session) 클라이언트가 쿠키를 변조해서 요청을 보낼 수.. 2023. 4. 7.