본문 바로가기
  • Welcome.

분류 전체보기292

[보안제품개발] - [git upload] git 활용 레지스트리 생성 --> 이름 : sum-test sum.h : sum이라는 함수를 선언(declaration)한다. 2. sum.cpp : sum이라는 함수를 정의(definition)한다. 3. main.cpp : sum(10)을 호출한다. sum이라는 함수는 sum.h에 선언되어 있다. git add sum . * # 현재폴더의 모든 파일들 add. git commit -m "Add sum modules & main.cpp" # add한 것들을 임시 업로드하고 코멘트 추가. 4. Makefile : sum-test라는 executable file을 만들고 관리한다. git add Makefile git commit -m "Add Makefile" git push origin main # .. 2022. 7. 3.
[ 모바일 악성코드 ] - [안드로이드 앱의 4대 구성 요소, apk 파일 구성요소, flutter, Smali code, Android entry point] https://kairo96.gitbooks.io/android/content/ch2.7.html 콘텐트 프로바이더 살펴보기 · [최신] 예제로 배우는 안드로이드 ANDROID kairo96.gitbooks.io [참고 블로그] android application fundamental build an app fundamentals review dalvik & smail application entry points getting started with analyzing android apps where do i get mallicious apps? static, dynamic analysis 액티비티 사용자 인터페이스 화면을 관리하는 컴포넌트. 액티비티 역할을 하기 .. 2022. 7. 3.
[ 디지털포렌식과 회계컨설팅 ] - [ 회계 포렌식(forensic accounting), 회계법인, e-discovery ] - 디지털 포렌식의 확장 분야 - 일반적으로 디지털 포렌식 어카운팅은 포렌식 어카운팅으로 줄여 부른다. :: 포렌식 어카운팅이 발달되어 있는 미국에서는 다음과 같이 정의한다. 기업에서 일어나는 일련의 회계부정 사건들에 대한 부정을 법정에서 증명하기 위해 적법한 절차에 따라 회계증거를 수집하고 분석하는 행위 또는 과정. 디지털 포렌식이 회계감사 부분에 적용되어있음을 알 수 있다. - 회계상의 재무서류의 감사 또는 작성 업무를 조직적으로 수행하기 위하여 설립된 법인. - 회계법인들은 회계감사뿐만 아니라 세무자문, 경영자문 등의 영업활동을 통해 수익을 올린다. :: 디스커버리(Discovery) :: 는 증거개시제도 혹은 소.. 2022. 7. 3.
[ Digital Forensic ] - [ Types of Hackers, RSID, RAT(Remote Access Trojan), Bitcoin] - OOXML포맷의 파일 내부 메타데이터에는 고유의 RSID(Revision Identifier)가 저장되어 있다. - RSID는 문서의 내용을 생성/수정/삭제 후 저장할 때마다 해당 단어, 문장, 또는 문단에 부여되는 고유한 값. - 내용 추가/수정/삭제 이력, 작성 순서, 사용된 문서 어플리케이션 등의 문서 이력을 추정 가능. - 일반적인 원격 접속 도구와는 다르게 정보 탈취, PC 모니터링 등 악의적인 목적으로 사용되는 악성코드. - 정상 프로그램 내 삽입, 이메일, 첨부 파일로 위장 등 악성코드를 유포하는 방식과 동일한 방식으로 유포. - 해당 프로그램이 실행될 경우 내부의 RAT 악성코드가 실행되어 공격자가 해당 PC에 접근이 가능하다. 랜섬웨어 → 비트코인이 생기.. 2022. 7. 2.
ICBM ( Iot, Cloud, Bigdata, Mobile ) ICBM ( Iot, Cloud, Bigdata, Mobile ) 4차 산업혁명의 키워드 : ICBM 플랫폼 IOT (사물인터넷) 사물인터넷 기술은 ‘센서’기술로 정의할 수 있다. 사물인터넷은 네트워크 센서를 통해 사물의 현황 정보를 수집한 뒤 이를 ‘중앙센터’에 전송한다. Cloud (클라우드) 클라우드는 중앙으로 수집된 정보를 분석하며, 이를 기반으로 사용자들에게 원격 서비스를 제공하는 기술로 정의한다. 각 가정의 에너지 사용 정보가 클라우드의 데이터베이스에 모이고 이에 대한 빅데이터 분석이 이뤄지면 클라우드는 각 가정의 스마트홈 에너지 서비스에 유의미한 각종 정보를 전송한다. BigData (빅데이터) 정보를 분석하는 기술 빅데이터는 분석 속도가 매우 빠르기 때문에 대량의 데이터들을 실시간으로 분석.. 2022. 6. 16.
가트너 선정 2022년 전략기술 트렌드 가트너 선정 2022년 전략기술 트렌드, 포인트는? #분야1 - Engineering Trust (엔지니어링 신뢰) Data Fabric (데이터 패브릭) 탄탄하게 짜여진 면직물처럼 데이터 소스를 언제 어디서든 유연하고 신속하게 사용할 수 있도록 비즈니스 플랫폼에서의 ‘구조화’가 되어야 한다는 의미이다. 데이터가 보다 효과적으로 사용되기 위해서는 다양한 플랫폼에 걸쳐 통합적인 시스템에서 이뤄져야 한다. Cybersecurity Mesh (사이버 보안망) 데이터와 관련된 보안성을 향상시켜, 분산되고 독립된 컴퓨팅 환경에서도 범용적으로 접근할 수 있으면서도 안전하게 활용하는 기술을 의미한다. 전통적인 비즈니스의 중앙집권 방식에서 오는 위험성을 탈피하고, 확장성과 보안성을 모두 잡아야 한다는 뜻이다. Priv.. 2022. 6. 16.
OWASP TOP 10 2020-2021 OWASP TOP 10 :: 2020-2021 :: Broken Access Control - 접근 권한 취약점 접근 제어(Access Control)은 사용자가 권한을 벗어난 행동을 할 수 없도록 정책을 만들고 실행하는 기능이다. 접근 제어가 취약하게 구현되면 사용자는 주어진 권한을 벗어나 인가되지 않은 데이터에 무단으로 접근하여 조작이나 삭제를 시도할 수 있다. Cryptographic Failures - 암호화 실패 기존에는 Sensitive Data Exposure(민감 데이터 노출)이라고 했으나, 명칭이 변경됨. 암호화에 오류가 있거나 미흡한 부분이 있는 경우에 해당 취약점 발생. 특히 개인정보와 금융데이터 같은 법과 규정에 강력하게 영향을 받는 경우라면 안전하게 보호하기 위한 추가 요구 사항을.. 2022. 6. 16.
레지스트리 / 루트 키 레지스트리(Registry) : 윈도우 레지스트리는 윈도우 운영체제에서 운영체제 및 프로그램 등에 필요한 정보들을 관리하기 위해 계층적으로 표현된 데이터베이스이다. 레지스트리는 윈도우 부팅 시 로그인, 서비스 실행, 응용 프로그램 실행, 사용자의 행위에 대한 모든 활동에 참여하고 그 정보를 기록 및 관리하는 것으로 거의 모든 윈도우 운영체제에서 사용된다. 레지스트리 루트 키(Root Key) : Key 들 중에서 가장 상위에 있는 키. 루트 키는 하위에 있는 레지스트리들이 어떤 정보가 있는지 알려주는 것으로, 레지스트리 정보를 일정한 기준으로 분류한다. ex) HKEY_CLASSES_ROOT : 파일의 각 확장자에 대한 정보와 파일과 프로그램 간의 연결에 대한 정보가 들어 있다. HKEY_CURRENT_.. 2022. 6. 16.
아티팩트, 윈도우 아티팩트의 종류 아티팩트 (Artifact) 운영체제나 애플리케이션을 사용하면서 생성되는 흔적을 말한다. 보통 시스템에 생성되는 증거를 다음 2가지로 분류하는데, 생성 증거에 해당하는 것이 아티팩트이다. 생성 증거 : 시스템이나 애플리케이션이 자동으로 생성한 데이터. → 아티팩트 보관 증거 : 사람의 상상이나 감정을 표현하기 위해 작성한 데이터. ex) 윈도우 시스템 상의 아티팩트 & 보관 증거 아티팩트 : 레지스트리, 프리/슈퍼패치, 이벤트 로그 등 보관 증거 : 직접 작성한 메일 내용, 블로그 및 소셜 네트워크 작성, 직접 작성한 문서 등. 윈도우 아티팩트 (Window Artifact) 윈도우의 여러 기능들과 그 기능을 구현하는데 필요한 요소들(파일 및 레지스트리 등)로부터 찾을 수 있는 여러 정보를 말한다. ex.. 2022. 6. 16.
Chain of Custody / 디지털포렌식의 절차, 5원칙 / 메모리 포렌식 / 볼타틸리티 Chain of Custody ( CoC ) - 관리 연속성(보관 연속성)- 증거법상 개념으로, 증거가 생겨난 이래로 그것을 보관한 주체들의 연속적 승계 및 관리의 단절의 유무에 대해 판단하는 것. 현재의 증거가 최초로 수집된 상태에서 지금까지 어떠한 변경도 되지 않았다는 것을 보증하기 위한 절차적 방법. 증거 조작으로 부터 피의자를 보호하는 성격을 지님. chain of custody 부정 : 부정 방법 중 대표적인 것이 일시적 무관리 상태를 증명하는 것. 일시적 무관리 상태 : 증거 보관자와 증거가 물리적으로 떨어진 상태. 무관리 상태는 증거보관자와 증거가 떨어져 있는 사이 증거가 변경될 수 있다는 가정을 의미하기 때문에 부정 방법으로 쓰임. chain of custody 수행 : 작성 문서 존재. .. 2022. 6. 16.
FAT / NTFS / EXT 파일 시스템 FAT File Allocation Table MS-DOS 용으로 개발된 파일 시스템 Window 로 넘어오면서 파일시스템 그 자체를 의미하게 됨. 구조가 간단하여 널리 쓰임. FAT12 클러스터 최대 개수 : 4,084(2^12 – 12) 12비트를 이용하여 클러스터 위치 표현. FAT16 클러스터 최대 개수 : 65,524(2^16 – 12) 16비트를 이용 “ . FAT32 클러스터 최대 개수 : 268,435,444(2^28 - 12) 32비트를 이용 “ . FAT 파일 시스템은 Reserved 영역, FAT 영역, Data 영역으로 나눌 수 있다. Reserved 영역 부트 섹터 FSINFO (File System INFOmation) 추가적인 예약 영역 FAT 영역 첫번째 테이블 영역 첫번째 .. 2022. 6. 16.
[ dreamhack ] - [ reversing | rev-basic-7] https://dreamhack.io/wargame/challenges/21/ rev-basic-7 Reversing Basic Challenge #7 이 문제는 사용자에게 문자열 입력을 받아 정해진 방법으로 입력값을 검증하여 correct 또는 wrong을 출력하는 프로그램이 주어집니다. 해당 바이너리를 분석하여 correct를 출 dreamhack.io 이번 리버싱 문제도 이전과 유형은 비슷하다. 마찬가지로 디컴파일된 코드에서 if문의 조건문을 확인하여 Correct를 출력하게 하는 입력값을 찾아내는 것이다. if 문의 조건문은 다음과 같다. (i ^ (unsigned __int8)__ROL1__(*(_BYTE *)(a1 + i), i & 7)) != byte_140003000[i] 이 식을 비교적 .. 2022. 6. 1.
[ dreamhack ] - [ reversing | rev-basic-6] https://dreamhack.io/wargame/challenges/20/ rev-basic-6 Reversing Basic Challenge #6 이 문제는 사용자에게 문자열 입력을 받아 정해진 방법으로 입력값을 검증하여 correct 또는 wrong을 출력하는 프로그램이 주어집니다. 해당 바이너리를 분석하여 correct를 출 dreamhack.io 이번 rev-basic-6 문제도 이전 문제들과 같은 유형이다. 이번에도 역시 if 절에 존재하는 조건문을 분석하여 특정 알고리즘을 만들어서 역으로 Correct를 출력하는 입력값을 찾아내야 한다. 조건문은 다음과 같다. byte_140003020[*(unsigned __int8 *)(a1 + i)] != byte_140003000[i] 이 코드를 간.. 2022. 5. 31.
[ dreamhack ] - [ reversing | rev-basic-5 ] https://dreamhack.io/wargame/challenges/19/ rev-basic-5 Reversing Basic Challenge #5 이 문제는 사용자에게 문자열 입력을 받아 정해진 방법으로 입력값을 검증하여 correct 또는 wrong을 출력하는 프로그램이 주어집니다. 해당 바이너리를 분석하여 correct를 출 dreamhack.io rev-basic-5 문제도 이전까지의 rev-basic 문제들과 비슷한 유형이다. if 절의 조건문을 확인해보면, *(unsigned __int8 *)(a1 + i + 1) + *(unsigned __int8 *)(a1 + i) != byte_140003000[i] 라고 되어 있는데, 이를 보기 편하게 정리하자면, a1[i+1] + a1[i] != .. 2022. 5. 31.
[ dreamhack ] - [ reversing | rev-basic-4 ] https://dreamhack.io/wargame/challenges/18/ rev-basic-4 Reversing Basic Challenge #4 이 문제는 사용자에게 문자열 입력을 받아 정해진 방법으로 입력값을 검증하여 correct 또는 wrong을 출력하는 프로그램이 주어집니다. 해당 바이너리를 분석하여 correct를 출 dreamhack.io 이전 rev-basic 문제들과 비슷하다. 디컴파일된 main은 다음과 같다. sub_140001000 함수가 참이되면 Correct가 출력되는 것으로 보인다. 확인해보겠다. for 문을 0x1C 번, 즉, 28번 돌리는데, 조건문은 ((unsigned __int8)(16 * *(_BYTE *)(a1 + i)) | ((int)*(unsigned __i.. 2022. 5. 30.
728x90