Linux 10

arp spoofing 공격과 telnet 서버 구축 방법

칼리리눅스를 사용하여 telnet 서버 구축 및 arp spoofing 공격을 가상머신환경에서 실습하겠다.환경 사항-모든 PC는 같은 환경에 존재한다.-목적운영체제IP addr공격자칼리 리눅스192.168.111.120/24telnet 서버칼리 리눅스192.168.111.100/24타켓윈도우 10192.168.111.110/24게이트웨이 192.168.111.11. telnet 서비스 란?간단하게 호스트에 원격으로 접속할 수 있게 해주는 서비스이다. 대표 적으로 원격 접속 서비스는 ssh와 telnet이 있는데 telnet은 평문 전송을 하기 때문에 보안에 취약하며 현 시점 보안 원격 접속인 ssh를 사용하는게 좋다.2. arp spoofing이란?먼저, 모든 네트워크 장비는 고유한 물리적 주소인 MAC..

Linux/Kali linux 2024.08.21

07.[Linux] 쉘(shell) Branching Command

Branching Command(분기 명령) exit 실행된 프로그램이 종료된 상태(코드)를 전달하는 것이다. 명령이 종료된 직후 종료 코드는 $?변수에 저장됩니다. 따라서 $?값을 확인하면 종료 코드를 확인 할 수 있습니다. $ sleep 100 100초 동안 멈추는 명령입니다. 이명령을 실행하는 도중 Ctrl + C로 강제로 종료 해보겠습니다. $?의 값을 확인해본 결과 130이 나왔고 이 결과는 128 + 2(SIGINT)인 것을 알 수 있습니다. 정상적 종료 예 시간을 확인하는 명령을 입력하고 $?의 값을 확인해 보겠습니다. 0이 나왔고 정상적으로 종료된 것을 확인 할 수 있습니다. 비정상 종료 예 cp명령으로 비정상 종료 해보겠습니다. 위 사진 처럼 비정상적인 명령 입력후 확인해보니 1(일반적인..

06.[Linux] 쉘(shell) Script Input / Output

Input / Output 처리방법 echo echo 명령은 입력한 텍스트를 출력시켜주는 명령어입니다. 사용예시 $ echo echo의 옵션 종류에는 아래를 참고해주세요 종류 의미 -n 메세지 출력후 새로운 행 추가 x -e escape 문자를 해석하여 특별한 의미를 지정한다. -n 옵션 아래 명령을 통해서 -n옵션의 차이를 확인해 봅시다. $ echo "hostname :" echo 명령으로 문자를 출력하면 자동으로 줄바꿈이 일어 납니다. 이때 줄바꿈을 없애는 옵션으로 -n을 사용할 수 있습니다. $ echo -n "hostname :" 이전과 다르게 줄바꿈이 일어나지 않고 바로 한줄로 진행되는 것을 볼 수 있습니다. -e 옵션 아래 명령을 통해서 -n 옵션의 차이를 확인해 봅시다. $ echo -e ..

05.[Linux] 쉘(shell) Positional Parameters 란?

Positional Parameters(위치 매개 변수)와 Special shell variable(특수 쉘 변수) 우리들은 (스크립트)명령어를 입력할 때 명령어 뒤에 특정 입력값을 받습니다. 이때 이런 값들 명령어 조차도 argument라고 생각하시면 됩니다. 예시로 아래와 같은 명령어가 있습니다. $ cp file1 file2 file1을 file2로 복제 해라라는 의미의 명령문입니다. 이때 그림처럼 cp는 $0이 되고, file1은 $1,file2는 $2이 되겠습니다. 아래 표를 참고 해주세요 이런 특정한 기호들을 위치 매개변수 또는 특수 쉘 변수라고합니다. 구분은 기호의 종류에 따라 구분됩니다. Positional parameters(위치 매개 변수)의 종류 종류 의미 $0 shell script..

04.[Linux] 쉘(shell) Script 란?

Shell Script(쉘 스크립트)란 리눅스에서 shell script는 명령문을 모아 놓은 파일이라고 합니다. 이 쉘 스크립트를 실행했을 경우 사용되는 쉘이 Sub Shell이라고 합니다. Sub shell이란 우리 쉘에는 로그인시 실행되는 Login shell이 있고 그 외 실행된 쉘을 sub shell이라고 합니다. 이 sub 쉘은 우리가 일반적으로 실행되는 쉘 위에 쉘을 실행 했다라고 생각하시면 됩니다. 위 사진 처럼 로그인 쉘이 시작된 뒤 새로운 shell bash을 실행 및 경로를 /tmp로 바꾸어 주었습니다. 하지만 원래 로그인 쉘에서는 기존 경로인 /root 가 유지 되는 것을 보고 있습니다. 여기서 알 수 있듯 sub shell에서 입력한 명령은 그 sub shell 안에서만 실행됩니다..

03.[Linux] 쉘(shell)과 Rules 2

Redirection(리다이렉션) 리다이렉션은 프로그램의 입력 및 출력 방향을 바꾸어 주는 것을 말합니다. STDIN(표준입력) 명령어를 입력할 때 특정 내용을 적는 것처럼 기본적인 키보드 입력을 말합니다. 기본적으로 입력은 키보드를 사용합니다. STDOUT(표준출력) 명령어를 입력했을 때의 출력을 말합니다. 기본적인 출력은 터미널을 사용합니다. STDERR(표준에러) 잘못된 명령어나 명령어 실행시 발생하는 에러 메시지들을 말합니다. 기본적인 출력은 터미널을 사용합니다. 리다이렉션의 종류 및 의미 Communication Channels Redirection characters 의미 STDIN 0 표준 출력을 터미널이 아닌 파일로 출력 STDERR 2> 2>> 표준 에러 출력을 터미널이 아닌 파일로 출력..

02.[Linux] 쉘(shell)과 규칙들 1

리눅스에서는 Quoting Rule이라는 규칙들이 존재합니다. Quoting Rule(인용 규칙) 먼저들어가기전에 메타 문자부터 설명하겠습니다. Metacharacters(메타 문자)란 shell에서 특별히 의미를 정한 문자들을 얘기합니다. " \ ? ( ) ... * % {} [] 띄어쓰기 포함 "등을 얘기하는 것이죠 각 문자들의 의미를 설명 하면 기호 의미 * 모든 문자 a* a로 시작하는 모든 문자 ? ?개의 글자 개수인 문자 (ex. post라는 문자는 ????물음표를 4개 사용 ) {1..3} 1부터 3까지의 문자 (ex. p{1..3} p로 시작하는 문자들중 1에서 3까지의 문자 Quoting rule은 메타문자의 의미를 제거하고 단순한 문자로 변경하는 것을 말합니다. 방법에는 아래의 3가지가..

01.[Linux] 쉘(shell)과 변수

변수 Linux에서 변수는 특정한 값(value)를 넣는 그릇이라고 생각하면 쉽습니다. 변수 선언 변수는 아래와 같이 선언할 수 있습니다. [변수명]=[값] 예를 들어 name이라는 변수명에 apple이라는 값을 넣어 본다면 아래와 같이 만들 수 있습니다. $ name=apple = 사이에 공백이 들어가면 제대로된 변수 선언이 되지 않을 수 있으므로 꼭! 공백(띄어쓰기) 없이 사용해 주세요 만약 변수가 미리 있다면 = 기준 우측에 있는 값이 덮어씌워 지게 됩니다. 원래 변수에 있던 값은 사라지게 됩니다. 변수 이름을 이용한 변수 확인 명령어 $ echo $[변수명] $ echo $name name변수를 실행하면 apple이라는 값이 출력됩니다. 변수명으로 변수 확인을 할 때에는 꼭 변수명 앞에 $기호를 ..

00.[Linux] 쉘(shell) 이란?

Linux에서 Shell은 단순하게 사용자가 입력한 명령어를 해석하는 역할을 갖습니다. Shell의 종류는 여러가지가 있지만 대표적으로 아래와 같이 4가지가 있습니다. Bourne shell(sh) AT&T 벨 연구소의 스티븐 본이 개발한 original shell이다. C shell(csh,tcsh) 빌 조이가 C언어의 기술을 넣어서 만든 Shell이다. C언어의 문법을 적용했고 History, aliases, job control, vi command editing and completion 기능을 포함한다. Korn shell(ksh) 데이비드 콘이 AT&T에서 기존 bourne shell에 C shell 기능을 포함시킨 것 *Bourn-again shell(bash) GNU 프로젝트로 만들어졌고,..