행정전자서명 프로파일 및 알고리즘 상세서 분석 중 정보처리기사, 정보보안기사 등 전산 유관 시험의 용어 설명이 잘 되어 있어 게시글로 옮긴다. 국가기술검정 시험이다보니 국가에서 규정한 용어집을 참고한다. 출처 : "행정전자서명 프로파일 및 알고리즘 상세서"(https://gpki.go.kr/pds/WebTrustAction.action) ANSI(American National Standards Institute) : 미국에서의 임의(Voluntary)표준 활동을 관리 조정하고, 표준의 적합성여부에 따라 미국국가표준(ANS:American National Standard)으로서 승인여부를 결정하는 비영리 민간단체로써 직접 표준을 개발하지는 않으나, 각 기구들의 표준과정을 관리하여 여러 기구들이 작성․처리..
HTTP Cookie에 대하여 HTTP 쿠키(웹 쿠키, 브라우저 쿠키)는 서버에서 사용자의 웹 브라우저로 전송한 작은 데이터 조각이다. 브라우저는 나중에 보낼 요청에 대비하여 저장해둔다. HTTP 통신은 상태를 저장하지 않는 stateless 통신이기 때문에 동일한 연결에 대해 연속적인 요청이 발생하지 않는다. 예를 들어 쇼핑몰을 이용할 때 장바구니에 담긴 물건 정보를 통신할 때마다 유지하지 않는다. 이렇게 상태를 저장하지 않는 대신에 쿠키를 이용하여 '세션'을 저장한다. 헤더에 쿠키를 사용하도록 설정하여 HTTP 쿠키가 패킷에 추가되어 각 HTTP 요청에 대해서 동일한 컨텍스트인지, 어떠한 상태를 가지고 있었는지 나타낼 수 있다. 쿠키는 크게 세 가지 목적으로 동작한다. 세션 관리(Session man..
Preview 웹 브라우저들은 다양한 위치에 사용자 데이터를 저장한다. 사용자가 가진 권한, 특성, 클라이언트 측 설정 값(팝업 허용 여부, 자동로그인 설정 여부) 등 여러가지 값들을 저장해 두고 웹 페이지 방문 및 필요할 떄마다 이용한다. 데이터가 보관되는 위치에 따라 보관 기간, 오프라인 사용 가능 여부가 다르다. 이 글은 클라이언트에 저장되는 데이터의 종류와 특징에 대해서 알아본다. 그리고 공격자의 입장에서 이러한 데이터를 안전하게 사용할 수 있는 방법은 있는지 알아본다. Client-side storage? 먼저 웹은 정적(Static)과 동적(Dynamic)페이지로 구분한다. 정적 페이지는 단순 HTML 요청과 응답으로 구성되고, 동적 페이지는 사용자 요청 값을 포함한 다양한 값들을 가공, 랜더..
개요 Flutter에서 textFormField 를 통해 사용자에게 값을 입력받은 후 바깥을 터치했을 때 키보드를 내려서 다른 버튼입력을 받고 싶을 때 사용한다. GetstureDetector() 와 함께 onTap 메소드에 FocusScope.of(context).unfocus();를 사용하면 된다. GestureDetector( onTap: (){ FocusScope.of(context).unfocus(); }, child: Stack( children: [ //배경 Positioned( child: Container( height: 300, ... ) ) ] ), ) 원하는 구역을 터치했을 때 키보드가 사라진다. 출처 : 코딩셰프(https://www.youtube.com/channel/UC_2ge..
2FA(Two Factor Authentication)은 온라인 포털 등에서 사용자의 기기를 기반으로 하는 추가 인증 절차이다. 기존 ID와 Password을 이용하여 로그인하는 지식 기반 인증 과정에서 하나의 인증 수단을 추가한 것으로 OTP(One Time Password)나 지문인식 모듈을 이용한 인증 방식 등을 사용한다. 기존의 인증 우회 기법의 발전과 함께 2FA 인증 우회 기술 또한 꾸준히 연구되고 있다. 이 글은 2FA 인증 기술과 공격자의 관점에서 이를 우회하는 기법을 다룬다. 2FA의 동작 과정 2FA는 기존의 인증 절차에서 인증 로직을 추가한 것이다. 기존의 로그인 방식이 email 주소나 패스워드를 묻는 방식이었다면, 인증코드(verification code)를 추가로 요구하는 방식이..
들어가며 AFL Qemu를 Ubuntu 20.04 환경에 설치한다. AFL만 설치하면 구동되는 것이 아닌, 별도 작업이 필요하기 때문에 정리한다. 아무것도 설치되지 않은 Ubuntu 20.04 VM 이미지에 설치를 진행한다. [환경(VM)] Ubuntu 20.04 LTS 순서 1. pip 설치 2. 의존성 패키지 설치 3. AFL++ 설치 4. AFL-Qemu 설치 1. pip 설치 sudo apt install python3-pip 2. 의존성 패키지 설치 sudo apt-get update sudo apt-get install -y build-essential python3-dev automake git flex bison libglib2.0-dev libpixman-1-dev python3-setu..