Theory57

Teredo 터널링이란? teredo 터널링이란? IPv4는 있지만 IPv6가 없는 NAT 내부 사설IP의 PC가 IPv6웹서비스에 접근할 수 있도록 해주는 것을 말해요. (요약:IPv4에서 IPv6로 상호전환해주는 기능) 특이사항은 teredo통신 시 udp로 ms IP 대역과 통신한다는거?! 2021. 4. 24.
자료의 요약 단어가 데이터다. 클릭이 데이터다. 링크가 데이터다. 오타가 데이터다. 꿈속에 나온 바나나가 데이터다. 어조가 데이터다. 쌕쌕거리는 숨소리가 데이터다. 심장박동이 데이터다. 비장의 크기가 데이터다. 검색어는 가장 계시적인 데이터다. 사진 역시 데이터로서의 모습을 드러냈다. - 모두 거짓말을 한다 - ▶ 커플들의 싸움을 일으키는 76%의 원인이 사소한 습관 때문이라고 합니다. ▶ 만약 당신이 "내 친구의 남자친구는 그렇지 않더라"는 발언으로 비교 평가하려 한다면 그 말을 잠자코 듣고 있던 당신 남자친구의 87%는 자괴감에 밤잠을 설칠 것이라고 합니다. ▶ 물론 그들 중 30%는 화를 내기도 합니다. ▶ 한번 헤어졌던 연인과 관계회복을 꿈꿨던 사람은 무려 82%에 달합니다. ▶ 헤어졌다가 다시 만난 커플의 .. 2019. 8. 30.
데이터과학이란? 세상에는 3가지 거짓말이 있습니다. 그럴듯한 거짓말, 새빨간 거짓말 그리고 통계입니다. - Benjamin Disraeli(벤저민 디즈레일리) - 인공지능의 시대에 통계학이 매우 중요한 학문이 될 것이며, 미래의 종교는 데이터종교가 될 것 입니다. - Yuval Noah Harari(유발 하라리) - 현실에서 보듯이 데이터과학은 레드불과 같은 각성음료에 의지해 날밤을 새우는 해킹과, 에스프레소에 의해 영감을 받은 통계학의 혼합입니다. - Metamarket의 CEO, Michael Driscoll(마이스 그리스콜) - 1. 데이터과학은 무엇일까요? 위키백과에서 말하기를 "데이터 마이닝(Data Mining)과 유사하게 정형, 비정형 형태를 포함한 다양한 데이터로부터 지식과 인사이트를 추출하는데 과학적 방.. 2019. 8. 23.
kerberos 버전별 구현[소스] 오늘부터는 글의 자유도를 높이기 위해 의식의 흐름기법에 따라 끄적끄적 하도록 하겠습니다ㅏㅏ~ kerberos? 커베로스 커버로스 .. 여러가지 이름으로 불리네요. 저는 처음 배울 때 커버로스로 배웠기 때문에 커버로스라고 말을 하겠습니다. 커버로스는 version1부터 version5까지 나왔는데 여기서는 버전 1과 버전 2를 직접 구현하러 떠나봅시다~ 1. 이 커버로스에 대해 알아봅시다!! 1-1) 커버로스란 무엇일까요? ▶ 검색을 해보니 그리스신화에서 저승문을 지키는 머리가 3개인 개님의 이름? 이라고 나오네요. ▶ 조금더 자세히 설명하면 MIT에서 개발된 대칭키 방식에 의한 인증시스템 정도로 볼 수 있겠네요. 2. 커버로스 버전1 2-1) 커버로스 버전1의 원리를 먼저 알아볼까요? # 그림이 조금 그.. 2019. 6. 30.
파일시스템 1. 파일시스템의 이해 1) 파일시스템의 종류 ▶ FAT, NTFS[Windows], EXT2/3/4[Linux], HFS[Apple] 2) 플래시 메모리의 특성 ▶ Erasing Block ▶ Random Access ▶ Wear Leveling 3) 일반적인 파일시스템의 구성 ▶ Boot Sector ⤷ Drive의 시작부분, Drive를 어떻게 읽을지 결정 ▶ Index or Metadata ⤷ Drive에 존재하는 파일이나 폴더들의 정보를 제공 ▶ Data ⤷ 각 파일에 대한 실제 Data 저장 4) 파일 데이터의 구성 [두 가지 구성방식] ▶ Cluster Chain ⤷ 파일의 크기가 커서 연속되거나 분산된 여러 개의 클러스터에 저장 후 이를 연결한 구조 및 형태 ⤷ 하드를 여러 개의 블록으로 .. 2019. 6. 17.
Ciphertext Only Attack(암호문 단독 공격) 구현 1. Ciphertext Only Attack(암호문 단독 공격) ▶ 공격자가 암호문만 알고 있을 때 사용할 수 있는 암호해독 기법이다. ▶ 암호공격 시 오직 암호문만 가지고 평문이나 키를 찾아야 하기 때문에 공격자 입장에서는 가장 어려운 공격방식이다. ▶ 대부분의 사람이 암호를 깬다고 얘기하는 말은 암호문 단독공격에 해당한다. ▶ 뭐.. 이유는 무차별공격, 빈도수분석 등의 공격이기 때문이다. ▶ 이용하는 방법은 평문의 통계적 성질 및 문장의 특성을 추측해서 해독을 시도한다. (1) 소스 msg = '53%%#305))6*;4826)4%=\')4%);806*;48#8@60\'))85;1%(;:-%*8#83(88)5*#;46(;88*96*?;8)*%(;485);5*#2:*%(;4956*2(5*c4)8@8*.. 2019. 5. 31.
Known Plaintext Attack(기지 평문 공격) 구현 1. Known Plaintext Attack(기지 평문 공격) ▶ 공격자가 평문과 평문을 암호화한 암호문을 모두 알고 있을 때 사용할 수 있는 암호해독 기법이다. (1) 소스 msg = '53%%#305))6*;4826)4%=\')4%);806*;48#8@60\'))85;1%(;:-%*8#83(88)5*#;46(;88*96*?;8)*%(;485);5*#2:*%(;4956*2(5*c4)8@8*;4069285);)6#8)4%%;1(%9;48081;8:8%1;48#85;4\')-485#528806*81(%9;48;(88;4(%?34;48)4%;161;:188;%?;' # 알려진 평문이 있을 경우 사용 가능 # 이 암호문 중에 goodglass, mainbranch 단어가 있는 것을 알 때 # 패턴을 비교해야.. 2019. 5. 31.
RSA를 이용한 전자서명(디지털서명) 구현 1. RSA를 이용한 전자서명(디지털서명) (1) RSA 전자서명 알고리즘 ▶ 예전에 정리한 내용이 있어서 아래 URL을 통해 확인이 가능하다. ▶ 참고 : https://ccurity.tistory.com/93 (2) 전자서명(디지털서명)의 방법 [1] 메세지 전체에 서명 ▶ 메모리 비용이 많이 든다. [2] 인증자(authenticator)에 대한 서명 ▶ 작은 비트블록인 인증자에 서명을 할 경우 인증자 변경 없이 문서만 변경하는 것은 불가능하다. ▶ 인증자 부분만 서명을 하기 때문에 기밀성은 보장할 수 없다. [3] 메세지의 해시값에 서명 ▶ 해시와 해시를 암호화 한 것을 공개키로 풀어서 비교가 가능하다. ※ Hmac을 사용하면 안되는 이유는? ▶ 키를 공통으로 쓰기 때문에 중간에 변경하고 다시 암.. 2019. 5. 31.
RSA공개키를 이용한 암호화 구현 1. RSA공개키를 이용한 암호화 (1) RSA공개키 암호 알고리즘 ▶ 예전에 정리한 내용이 있어서 아래 URL을 통해 확인이 가능하다. ▶ 참고 : https://ccurity.tistory.com/88 (2) RSA의 특징 [1] 개인키를 알면 공개키를 구할 수 있다. [2] 그러나 공개키를 안다고해서 개인키를 구할 수는 없다. [3] 소스 from Crypto.PublicKey import RSA def main(): msg = b'hellow!' print(msg) private_key = RSA.generate(1024) # 개인키를 하나 만듬 print('private_key : {}'.format(private_key)) public_key = private_key.publickey() # .. 2019. 5. 30.
32bit 머신의 주소체계 1. 32bit 머신의 주소체계 1) Virtual Address Space ▶ 실제 물리 메모리를 매핑한 가상주소를 사용 + 가상주소를 사용하기 위해 Page Table을 사용 ▶ 저장 불가능한 메모리 정보는 Page File로 저장 하는 것을 paging이라 함. 저장장소 = C:\pagefile.sys ▶ 프로세스 메모리 공간은 다른 프로세스가 접근 불가 + OS가 메모리 접근을 관리 ▶ 32bit 환경에서 최대 VAS는 4GB이고, 64bit 환경에서 2의 64승만큼의 VAS를 가질 수 있다. + 4GB가 넘어가면 메모리에서 접근이 불가능 2) 용어 ▶ 힙 = 동적메모리 할당 ▶ 스택 = 복귀메모리주소, 매개변수 ▶ 메모리 매핑 = 커널영역의 라이브러리 호출 ▶ Static memory 할당 = .. 2019. 4. 27.
디지털포렌식 2. 디지털 포렌식 1) 디지털 증거의 성격 ▶ 무결성, 진정성, 동일성, 신뢰성, 정당성 2) 디지털 포렌식 증거처리 절차 ▶ 준비 - 식별수집 - 이송 - 획득분석 - 분석서작성 - 보존 3) COC(Chain of Custody)란? ▶ 연계보관성 - 진정성을 인정받기 위함 ▶ 디지털 증거의 발견방법과 처리방법을 비롯 증거에 대한 모든 사항을 명확히 기술하고 보관 및 이송과정에서 인수인계 과정에 대한 기록과 검증이 필요 4) E-discovery 전자증거개시제 ▶ 미국 - 증거 5년간 보관법, 제출불가 시 패소 ▶ 삼성 사용자 소송 [수리해도 문제발생] + 증거는 삼성이 가지고 있으나 증거 안줌 5) 디지털 포렌식 준비도 ▶ 해킹사고 발생 시 증거가 수집되도록 ▶ 어카운팅 - 기업의 비리를 잡는 것 2019. 4. 27.
실시간 대응 1. 실시간 대응 1) 실시간 대응의 중요성 ▶ 전자상거래는 시스템을 다운시키면 금전적 손실 발생 ▶ 하드디스크 이미징 시 많은 시간이 소요 ▶ 시스템 동작 상태에서 증거 수집이 필요할 때도 있음 + ex) 프로그램이 메모리에만 존재, 임시저장 파일 ▶ 클라우드 시스템 전체를 이미징 불가 2) 사건 유형에 따른 수집내용 ▶ 해킹 침해 관련 - 메모리 조사 + 프로세스 관련, 메모리, 시스템파일, 네트워크접속정보, 원격서버, 도청 ▶ 지적 재산 침해 관련 - 파일 조사 + 해킹과 무관, 확장자 변경, 시간, 사용흔적, 숨김파일, 삭제된 파일, 설치정보, 유출경로 ▶ 인터넷 사용 관련 - 접속기록 및 개인정보 3) 로카르 법칙( Locard's ) ▶ 접촉하는 두 개체는 서로의 흔적을 주고 받는다. ▶ 동작.. 2019. 4. 27.