3. Pwnable (포너블) (60) 썸네일형 리스트형 [2023.04.01] '생활코딩 - Linux' 강의 수강 및 달고나 문서 ~p.12 '생활 코딩 - Linux' 강의를 섹션 4부터 섹션 6까지 수강하고 달고나 문서를 목차 3번까지 학습하였다. - 유닉스 계열에서는 데이터와 실행 프로그램 성격에 따라 위치가 정해짐 디렉토리 정리 /root: 최상위 디렉토리 /bin: 유저가 사용하는 명령들 /sbin: 시스템 root 관리자가 사용하는 프로그램 /etc: 프로그램 동작 방법 변경 /var: 변경가능한 파일들 /tmp: 임시로 자장하는 파일들 /home: 사용자들의 디렉토리 /lib: sbin과 bin의 공통 라이브러리 /opt: 소프트웨어 설치 시에 적절한 디렉토리에 자동으로 위치시킴. 파일 찾는 법 1. locate --> locate + 파일이름 - 데이터베이스를 뒤져서 파일을 찾음 - 파일을 찾는 속도가 빠름 2. find -->.. [2023.03.18] '생활 코딩 - Linux' 강의 수강 '생활 코딩 - Linux' 강의를 섹션 0부터 섹션 3까지 수강하였다. 실습환경 구축 방법 1. CodeOnWeb 이용 - https://www.codeonweb.com 2. cloud9 이용 - 프로그래밍 동작 환경을 온라인에서 제공하는 사이트 - https://c9.io 디렉토리와 파일 리눅스 제어 1-명령어 통해 제어(CLI: Command Line Interface) 2-현재 머물고 있는 디렉토리를 대상으로 명령이 내려짐.(pwd 명령어 : 현재 위치하고 있는 디렉토리 확인) 명령어 정리 디렉토리 생성 : mkdir 디렉토리명 빈 파일 생성 : touch 파일명 현재 디렉토리 아래의 파일과 디렉토리 목록 출력 : ls 현재 위치한 디렉토리 아래 파일과 디렉토리 더 자세히 출력 : ls -l //.. [2022.11.26] 포시즌 - 포너블팀 활동보고 생활코딩 - Linux 섹션 8 그룹 그룹: 소유자를 제외하고 특정 사람들을 묶어 권한을 부여하고 싶을 때, 그룹을 생성할 수 있다. pwnable라는 그룹을 만드는 코드 sudo groupadd pwnable 그룹이 만들어진 것을 확인하려면 /etc/group을 입력하면 된다. /etc/group 그룹에 권한을 추가하는 방법, pwnable이라는 그룹에 팀원들을 추가해보자. -a -G는 group append라는 뜻으로 그룹에 추가한다는 뜻이다. sudo usermod -a -G pwnable yejin sudo usermod -a -G pwnable jiwon sudo usermod -a -G pwnable sumi sudo usermod -a -G pwnable raon 그룹에 새로운 사용자들이 추.. [2022.11.19] 포시즌 - 포너블팀 활동보고 1. 생활 코딩 리눅스 강좌 섹션 6 : 사용자(user) 다중 사용자1 (Multi user 1) 유닉스계열의 시스템은 다중사용자 시스템임. 따라서 권한 설정이 중요함. 여러명이 운영체제를 같이 사용하는 방법에 대한 설명에 대한 필요성을 말함. - 다중 사용자2 (Multi user 2)접속 사용자 식별 명령어 : who → 컴퓨터에 접속해있는 사용자를 알려주는 명령어 사용자 식별 명령어 : id → 현재 사용자의 uid와 gid를 알려줌. 관리자와 일반 사용자 ( super(root) user VS general user) 단순 일반 사용자는 sudo 명령어 접근 자체도 막힐 수 있음. super user 는 보통 닉네임 앞에 root 가 붙음. 명령줄 뒤에 붙는 ~$ 기호는 보통 일반 유저 사용자라.. [2022.11.12] 포시즌 - 포너블팀 활동보고 1. 해커 지망자들이 알아야 할 Buffer Overflow Attack의 기초 By 달고나 문서 정리 p.12~27. 프로그램이 시작되면 EIP 레지스터(CPU가 수행할 명령이 있는 레지스터)는 main()함수가 시작되는 코드를 가리키고 있음 여기서 main()함수의 시작점은 0x80482fc임. - EIP : main0 함수의 시작점 - ESP: 스택의 꼭대기 - ebp를 저장하는 이유: 이전에 수행했던 함수의 데이터를 보존하기 위해서 - 함수 프롤로그 과정: 함수가 시작될 때 stack pointer와 base pointer를 새로 지정하는 것 - push %ebp 이 코드를 수행하여 이전 함수의 base pointer를 저장하면 stack pointer는 4바이트 아래인 0xbffffa78을 가리.. [2022.10.8] 포시즌 - 포너블팀 활동보고 포너블 팀별 활동 4주차 입니다. c언어는 배열, 포인터, 함수 부분에 관해 강의를 듣고 백준문제를 풀었습니다. 백준문제 1546번 (배열로 평균 구하기) #include int main() { int n; int max = 0; double avg = 0; scanf("%d", &n); //과목의 수 int score[1001];//세준이의 점수들 for (int i = 0; i < n; i++) { scanf("%d", &score[i]); //세준이가 입력하는 과목의 점수들 if (max < score[i]) // 과목1부터 MAX를 찾는다. max = score[i];// 최대값을 찾음 } for (int i = 0; i < n; i++) { //평균값구하기 avg = avg + (double)s.. [2022.10.01] 포시즌 - 포너블팀 활동보고 팀활동으로 리눅스 명령어들을 같이 정리하고 이해했고, BOF문서를 확인해서 개념을 잡았습니다. 또한 백준문제를 C언어로 풀이함으로서 기본을 다지는 시간을 가졌습니다. 생활코딩 - 리눅스 섹션 2 I/O Redirection , 섹션 3 쉘과 쉘스크립트, 섹션 4 디렉토리 구조돠 파일 찾는 법 https://www.inflearn.com/course/%EC%83%9D%ED%99%9C%EC%BD%94%EB%94%A9-%EB%A6%AC%EB%88%85%EC%8A%A4-%EA%B0%95%EC%A2%8C [무료] 생활코딩 - Linux - 인프런 | 강의 본 수업에서는 리눅스의 사용법을 다룹니다. 특히 초심자들이 어려워하는 부분이 명령어를 이용해서 컴퓨터를 제어하는 법입니다. 여기서는 초심자가 명령어를 사용하는데.. [2022.09.17] 포시즌-포너블팀 활동 보고 드디어 OT가 진행되고 첫 동아리 활동 시간 저희 포너블팀은, 지난번 OT시간에 작성했던 활동 계획서를 토대로 하여 C언어와 리눅스 기초를 다지는 시간을 가졌습니다. 인프런 강의의 경우에는 작년 선배님들께서 학습하셨던것들을 참고하였습니다. 무료강의이기 때문에 유튜브로도 시청할 수 있기 때문에 편리한 것 같습니다. C언어의 경우 두들낙서의 강의를 수강하였습니다. 이번 회차의 경우에는 지난시간에 팀원들끼리 합의하여 입력,입출력 부분에 대한 부분을 예습해오고, 팀별 스터디 시간에는 백준 알고리즘 사이트 단계별 연습문제를 몇가지 함께 풀어보았습니다. 백준 알고리즘 사이트 문제를 풀때는 , 아주 쉬운 문제임에도 불구하고, 틀렸다고 떠서 당황했던 시간이었습니다. 끊임없는 노력이 완벽을 만들 수 있습니다. 끝까지 함.. 이전 1 2 3 4 5 6 7 8 다음 목록 더보기