반응형

Major Study./System hacking 25

시스템 보안 05.네크웍서비스 데몬 설정 변경 문제

/* * http://sosal.tistory.com/ * made by so_Sal */ 회사의 홈페이지 서버로 사용하기 위한 용도로 Linux시스템을 인스톨 하였다. 하지만, 인스톨하는 과정에서 일부 네트웍서비스가 같이 인스톨되었다. 이중, named 같은 네트웍서비스는 불필요한 것이므로 disable시켜야 된다. 시스템 설정을 변경시켜서 이 서비스가 영구적으로 제공되지 않도록 하시오. (단, 나중에 다시 이 네트웍서비스가 필요하게 될지 확실치 않기 때문에 서비스 관련 파일들을 완전히 삭제해서는 안된다.) 미션의 조건은, named라는 서비스를 종료시키고, 영구적으로 제공되지 않도록 해야한다네요. 일단, 문제에서 말한 named 서비스를 종료시키기 위해서.. 먼저 서버 백그라운드에서 돌아가고 있는 n..

시스템 보안 04.악성 프로그램 프로세스 종료 문제

/* * http://sosal.tistory.com/ * made by so_Sal */ 관리중인 solaris 시스템이 어느날 해킹을 당하여 외부 침입자가 불법침입을 하였다. 다행히 외부침입자의 침입경로를 파악하여 제거하였으나, 불법침입을 한 상태에서 행한 불법작업내역은 아직 확인하지 못하였다. 특히 이 침입자는 이 시스템을 경유지로 하여 타 시스템에 대하여 지속적인 스캐닝 또는 서비스거부공격을 하고 있을 가능성이 매우 높다. solaris 시스템을 평소 관리했던 상식에 비추어서 시스템내에서 의심스럽게 보이는 프로세스를 찾아서 강제종료 시키시오. --- 단순히 프로세스 목록을 찾아, 강제종료만 하면 되는 문제입니다. 의심스럽게 보이는 프로세스를 찾기 위해선, 일단 프로세스 목록을 보는 방법을 알아야합..

시스템 보안 03.쉘 환경변수 변경 문제

/* * http://sosal.tistory.com/ * made by so_Sal */ 환경변수? / 네이버 백과사전 시스템의 속성을 기록하고 있는 변수라는 IT용어로, OS의 셸 등에 설정되어 있다. 변수의 이름과 의미는 미리 정해져 있기 때문에 환경변수를 읽으면 시스템의 설정을 어느 정도 알 수 있다. 사용자가 의도적으로 변환할 수 있는 환경변수도 많으며, 특히 웹 브라우저에서는 자신의 정체를 숨길 목적으로 브라우저 등의 변수를 변환하는 경우도 있다. 일단 접속해봅시다. ------- 사용자의 쉘환경변수들은 그 설정값에 따라 때로는 보안상의 문제점을 야기시키기도 한다. 현재의 bash 쉘환경변수 설정을 살펴보고 보안상 문제가 있는 부분을 바로 잡으시오. 단, 이문제에서는 현재 접속되어 있는 쉘에 ..

쉘코드 주소값, ret값 위치, .dtors 위치 찾기

/* * http://sosal.tistory.com/ * made by so_Sal */ 쉘코드의 주소를 환경변수로 가져올 수 있습니다. localhost] $ export hkpco=`perl -e 'print "\x31\xc0\xb0\x31\xcd\x80\x89\xc3\x89\xc1\x31\xc0\xb0\x46\xcd\x80\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80"'` int main( void ) { char *p = getenv("hkpco"); printf( "%p\n" , p ); } -쉘코드 출처 - http://hkpco.kr/ UnivShellcod..

Gera _ Stack #1

/* * http://sosal.tistory.com/ * made by so_Sal */ 취약점이라 하기 뭣한~?! 음, 아주 간단한 문제입니다. /* stack1.c * * specially crafted to feed your brain by gera */ int main() { int cookie; char buf[80]; printf("buf: %08x cookie: %08x\n", &buf, &cookie); gets(buf); if (cookie == 0x41424344) printf("you win!\n"); } buf[80] 배열을 overflow 시켜서, cookie 변수의 value를 \x41424344로 바꿔주면 되겠습니다. [sosal@localhost gera]$ (perl -e..

Gera's InsecureProgramming

/* * http://sosal.tistory.com/ * made by so_Sal */ http://community.corest.com/~gera/InsecureProgramming/ 사이트를 소개하겠습니다. 보안에 취약한 프로그램 코드를 소개하고, 그 취약한점을 확인(?) 하면서.. 시스템해킹을 연습하는 아주 재밌는 사이트입니다. ㅎㅎ Here you can find a collection of exercises that will help you teach yourself the art of insecure programs exploitation. It's not complete, but it's minted to open your mind. The idea is NOT to use any hum..

Linux - shared library Hijacking

/* * http://sosal.tistory.com/ * made by so_Sal */ 1. Shared Library Hijacking? 2. 예제와 Shared library(공유라이브러리) 의존성을 확인법 3. 라이브러리를 만들기 위한 gcc 컴파일러의 옵션 4. 완성된 공격 라이브러리를 이용하여 공격하기 1. Shared Library Hijacking? 공유라이브러리는 심볼(함수,변수)들을 프로그램이 시작하기 전에 로드하여, 필요로 할때마다 연동되는 동적인 라이브러리이다. 메모리, 용량 절약과 라이브러리를 언제든지 업데이트 할 수 있는 융통성을 가지고 있지만 사용자로부터 접근하기 쉽도록 짜여 있어, 보안에 문제가 발생한다. 일반적으로 gcc 컴파일을 대부분 아래와 같이 하게된다. gcc so..

반응형