분류 전체보기 103

[리눅스 기본 보안 설정] Telnet, SSH root 계정 원격 접속 제한

Telnet root 계정 원격 접속 제한 /etc/securetty를 문서 편집기 vi로 열어 pts/0 ~ pts/x를 전부 삭제한다. 위 그림과 같이 pts/0 pts/1이 존재하는 경우 삭제하시면 됩니다. /etc/pam.d/login 위의 경로 파일에서 #auth require /lib/security/pam_security.so 에서 주석을 제거해 주세요 저 같은 경우는 없어서 신규로 추가해 주었습니다. SSH root 계정 원격 접속 제한 /etc/sshd/sshd_config 파일을 vi로 열어 주시면 아래와 같은 화면이 나타납니다. 처음에 파일에 들어가시면 이런 화면이 안나오지만 :set nu라는 명령어를 치시면 위 사진처럼 번호가 나타나는 것을 보실 수 있습니다. 그럼 42번 줄의 #P..

linux/CentOS 2019.12.31

실전 악성코드와 멀웨어 분석 - 실습 1-1

!! 해당 자료가 저작권상 문제가 있다면 해당 글을 바로 삭제하겠습니다. 실습 목적 1장에서 배운 기술을 연습할 기회를 제공하기 위함이다. 실습 1-1 Lab01-01.exe와 Lab01-01.dll 파일을 사용하여 분석한다. 파일에 관한 정보를 얻으려면 1장에서 사용한 기법과 도구를 사용하고 다음 질문에 대답해보자. 질문 1.http://www.virustotal.com/에 파일을 업로드한 후 보고서를 보자. 기존 안티바이러스 시그니처에 일치하는 파일이 존재하는가? Lab01-01.exe 파일 43/71의 백신에서 탐지하였습니다. 대중적으로 알고 계신 백신은 ALYac, AhnLab-V3 백신에서 탐지한 것을 알 수 있습니다. Lab01-01.dll 파일 31/69개의 백신이 탐지하였습니다. 많은 백신..

[악성코드 분석] 악성코드 분석 방법

악성코드 분석 방법 악성코드를 분석하는 방법에 대하여 설명드리겠습니다. 일반적으로 언급되는 4가지 방법을 기준으로 정의하여 정리하였습니다. 위의 그림에서 보듯이 자동화 분석, 정적 분석, 동적 분석, 상세 분석과 같이 4가지 항목으로 분류 할 수 있습니다. 화살표가 나타내는 난이도란, 분석가의 입장에서 이러한 방법을 사용할 때 필요한 시간, 지식등을 고려해봤을 때에 난이도를 나타낸 것입니다. 이제 한가지씩 집어 가면서 설명드리겠습니다. 자동화 분석 자동화 분석은 악성코드의 급격한 증가로 인해 점차 이에 대하여 많은 시간과 인력이 필요하게 되었다. 하지만 모든 악성코드를 수동으로 분석하기에는 이러한 요소들이 많이 부족하다. 그렇게에 악성코드를 자동으로 분석해주는 방법이 지속적으로 나오고 있고, 현재 이러한..

악성코드 분석 2019.12.20

[악성코드 분석] 리버스 엔지니어링이란?

리버스 엔지니어링(Reverse Engineering) - 소프트웨어의 한 분야로, 이미 만들어진 시스템을 역으로 추적하여 처음의 문서나 설계기법 등의 자료를 얻어내는 일을 말합니다. 이것은 시스템을 이해하여 적절히 변경하는 소프트웨어 유지보수 과정의 일부 입니다. 다른 단어로는 역공학이라고도 말하는데요 개발을 예로 들어서 설명드릴게요 개발은 위해서 분석, 설계, 코딩, 테스트, 유지보수 등의 절차를 밟아가며 개발하는 순공학에 반대로 뒤집다라는 뜻에 리버스가 붙은 역공학이라고 부릅니다. 소프트웨어 제품은 판매시 소스는 제공하지 않으나 각종도구를 활용하여 컴파일된 실행 파일과 동작상태를 정밀 분석하면 그 프로개름의 내부동작과 설계 개념을 어느 정도 추척할수 있고, 이러한 정보를 이용하여 크랙, 파일을 수정..

[C언어] printf 함수와 scanf 기본적인 이해

printf 함수를 이용한 정수의 출력과 서식문자 printf 함수를 이용하면 문자열 이외의 데이터를 다양한 형태로 출력하는 것이 가능하고, 정수를 출력하는 것도 가능하다 예졔) printfOne.c #include int main(void){ printf("Hello EvreyOne \n"); printf("%d\n", 1234); printf("%d %d\n", 10 , 20); return 0; } 아래의 그림을 보시면 문자열의 첫 번째로 등장하는 것이 %d이다, 이러한 문자를 가르켜 '서식문자'라 하는데, 이는 출력의 형태를 지정하는 용도로 사용된다. %d는 10진수 정수를 가르키는 출력의 형태이고 1234를 전달받아 화면의 출력하는 식으로 printf가 이루어 진다. Scanf 함수를 이용하여 ..

study/C언어 2019.12.20

[C언어] 주석처리

주석(Comment)은 프로그램 내에 삽입된 메모를 뜻하는데요. 컴파일 대상에서 제외가 되기 때문에 주석의 유무는 프로그램의 실행결과에는 영향을 미치지 않습니다. 주석의 필요성 C언어가 사람이 이해하기 쉬운 언어라 할지라도, 그 내용을 분석하는 데는 상당한 시간이 걸립니다. 다른 사람이 구현한 코드라면 100줄이 안 되는 분량의 코드를 분석하는 데에도 적지 않은 시간이 걸린다. 코드에서 주석은 선택이 아닌 필수로 넣는 것을 권장합니다. 블록 단위 주석 C언어에서 주석을 다는 방식은 두가지가 있는데, 그 중 하나는 주석의 시작과 끝을 명시하는 방식입니다. 시작은 /* 으로 명시하고, 끝은 */ 으로 명시합니다. /* 주석 처리된 문장 */ 두줄 이상의 주석처리하는데 사용합니다 /* 주석 처리된 문장1 주석..

study/C언어 2019.12.20

[C언어] 1. HelloWorld

Visual C++ 2010 Express Edtion으로 작성 되었습니다. C프로그램 완성과정의 흐름도 첫 번째 단계 : 프로그램 작성 두 번째 단계 : 작성한 프로그램의 컴파일 세 번째 단계 : 컴파일 된 결과물의 링크 이 중에서 세 번째 단계인 링크는 보통 컴파일의 과정에서 함께 진행되기 때문에, 프로그램 완성과정을 '프로그램 작성'과 '컴파일'의 두 단계로 줄여서 이야기하기도 합니다. 프로그램 작성 1단계 : 작업공간 마련 작성된 코드를 가르켜 '소스코드(Sourcecode)'라 하며, 소스코드를 만들어가는 과정을 가르켜 '코딩(Coding)'이라 합니다. VC++에서 새 프로젝트를 클릭 하세요 클릭하게 되면 아래와 같은 화면이 나옵니다. 여기서 'Win32 콘솔 응용 프로그램'을 선택하고 다음과..

study/C언어 2019.12.20

[C언어] 테트리스

테트리스가 어떤 흐름으로 구성이 되는지 알아보도록 하겠습니다. 테트리스 게임은 안해본 사람이 없을 정도로 쉽게 접근할 수 있는 게임이라고 생각이 듭니다. 게임 설명 - 게임 일시정지 가능 (P, p키) - 각 레벨에서 10줄을 없애는 경우 레벨업합니다. - 레벨업시에 보상으로가장 클리어한 레벨의 숫자만큼 아래쪽 줄을 지워줍니다. - hard drop(space key)시 추가 보너스점수가 있습니다. 헤더 선언 && 매크로 함수 정의 #include //입출력 함수를 제공하는 헤더 #include //windows 함수를 제공하는 헤더 #include //콘솔 입출력 함수를 제공하는 헤더 #include //시관 관련 함수를 모아놓은 라이브러리 헤더 #include //문자열 변환,의사 난수생성, 동적 메..

study/C언어 2019.12.20

IDC란?

IDC는 '인터넷 데이터 센터'(Internet Data Center)의 준말로, 인터넷 연결의 핵심이 되는 서버를 한데 모아 집중시킬 필요가 있을 때 설립하는 시설을 말한다. IDC는 서버들은 한데 모아 안정적으로 운용해 주기 떄문에 특히나 온라인 게임에서는 중요한 시설로 손꼽히는데, 온라인 게임은 특성 상 서버가 없으면 서비스 자체가 힘들기 한데, 특히나 엄청나게 많은 서버가 필요한 MMORPG(Massively Multiplayer Online Role-Playing Game)에서는 네트워크 속도와 관리 면의 이점 때문에 IDC를 이용하기도 한다. IDC는 정전 등으로 인해 서버가 멈추면 안되기 때문에 절대 정전되지 않도록 설계 한다. 만의 하나에 대비하기 위해 IDC는 전력 공급 업체로부터 우선적..

IT 2019.12.18

ISP(Internet Service Provider) - 인터넷 서비스 제공자

개요 : ISP는 인터넷에 접속하는 수단을 제공하는 주체를 가리키는 말입니다. 쉽게 말하자면 '인터넷 회사'라고 부르는 업체들, 즉 인터넷 서비스를 제공하는 업체들을 '인터넷 서비스 제공자(ISP : Information Service Provider)라고 칭합니다. 예) 우리나라의 경우 KT, LG유플러스, SK브로드밴드 등 대형 사업자 등이 있습니다. 종류 : ISP는 크게 유션이나 무선 장치를 통해 클라이언트들을 인터넷에 연결하는 접속 ISP와 소규모 사업자 등 다른 이들에게 서버 공간을 빌려주는 호스팅 ISP, 그리고 호스팅 ISP와 접속 ISP를 연결하는 대량의 대역을 제공하는 통행 ISP 이렇게 셋으로 나뉜다 인터넷 인프라 전문기업인 KINX는 국내 유일의 L2(Layer 2) 기반 중립적 I..

IT 2019.12.18