본문 바로가기
728x90

분류 전체보기480

해커스쿨 FTZ trainer1~10 정리 시스템 해킹을 빠르게 배울 수 있는 해커스쿨에서 FTZ 를 편하게 풀려면 로컬 서버를 구축해야합니다. 서버 구축에 관한 내용은 Shionista의 보안블로그 로 구축하실 수 있습니다. https://blog.naver.com/is_king/221490460244 [hackerschool FTZ] VMware에 로컬 서버 구축하기 FTZ는 hackschool.org에서 만든 시스템 해킹을 연습하기 위한 훈련장입니다.기초적인 시스템 해킹 기법... blog.naver.com Trainer1 아이디/비번은 'trainer1'으로 동일합니다. 프롬프트 관련 내용 ls : 파일을 보여줌 -a : 숨김파일 출력, 파일 앞에 . 를 이면 숨김 파일이고 .를 제일 앞에 붙으면 숨김파일이 된다. -l : 디렉토리와 파일.. 2020. 8. 5.
처음 배우는 암호학 ch4 블록암호 블록암호(Block Cipher) : 자료 블록을 처리하는 핵심 알고리즘과 운영 모드의 조합으로 구성되는 암호의 한 종류 즉, 일련의 자료 블록들을 처리하는 기법 자료 블록을 처리하는 핵심 알고리즘 - 암호화 알고리즘(E) : 키 K와 평문 블록 P -> 암호문 블록 C 산출 : C = E(K,P) - 복호화 알고리즘(D) : P = D(K,C) 보안 목표 '얼마나 무작위하게 보이는가?' 블록 암호가 안전하려면 반드시 의사무작위 치환(Pseudo random permutation, PRP) 에 해당해야함. : 키를 알지 못하는 공격자가 블록 암호의 출력을 계산할 수 없어야 함 P에 대한 E(K,P) 가 어떤 모습일지 단서 없고 그 어떤 패턴도 발견할 수 없어야 함. 블록 크기 블럭 암호 특정 짓는 두 개.. 2020. 8. 5.
시스템 해킹 별 찍기 프로그램 구현 이와 같은 별 찍기를 어셈블리어로 작성해봅시다. 먼저 c 언어 코드로 작성을 해보았습니다. 이제 이걸 어셈블리어 코드로 옮겨볼겁니다. n = 높이 = r8 i = 큰 = r9 j = 작은 = r10 으로 할당해주겠습니다. 다음과 같이 '*' 문자열을 가리키는 STAR 와 0x0a - 줄바뀜 변수인 EMPTY 를 선언해줍니다. WRITE 를 해야하기 때문에 rax 에는 1을 넣어주고 rdi 모드도 1로 선언해줍니다. 별을 하나씩 출력해줄거기 때문에 rdx 에는 1을 넣어주어야합니다. r10 는 위에서 말했듯이 j 이기 때문에 0으로 초기화를 해줍니다. 스택 프레임이 받은 변수 7, RET , RSP 이렇게 깔립니다. 64비트기 때문에 각자 8비트가 됩니다. 그래서 입력된 수를 받기 위해서는 RSP + 16.. 2020. 8. 4.
어셈블리어로 반복문 구현 다음은 100회 반복하면서 A 를 출력하는 반복문이다. for(int i = 0; i write 해야하기 때문에 rdi 도 write 니깐 1을 넣어주고 msg 를 출력해야하기 때문에 rsi 에 넣음 또 변수 r10 에 1을 넣어줌. 이는 for 문에서 index 와 같은 역할을 함. 3. again 함수 정의 cmp 은 A 와 B를 비교해주는 명령어이다. je 는 비교 결과가 같으면 다음 주소로 점프해주는 명령어다 . 즉 r10이 100과 같으면 don.. 2020. 8. 3.
728x90