1. FTP와 웹을 이용한 대규모 공격
# k986ytv
# FTP(File Transfer Protocol, 파일 전송 프로토콜)
- TCP 기반의 네트워크에서 사용자들이 서로 파일을 전송할 수 있도록함
- 일반적으로 사용자는 사용자이름과 패스워드 조합으로 FTP서버에 인증함
- 익명인증 : 사용자이름 - "anonymous"입력, 패스워드 대신 이메일주소 입력
1) 파이썬으로 익명 FTP 스캐너 만들기
- ftplib 를 활용하여 특정 서버가 익명로그인을 허용파는지 판단하는 스크립트 작성
- anonLogin()함수는 호스트 이름을 입력받고 익명 로그인이 허용되는지 묘사하는 불리언 반환
(성공하면 "True", 연결을 시도하는 과정에서 예외가 발생하면 "False")
실행결과
2) Ftplib로 FTP 사용자 인증정보 공격하기
- FileZilla 같은 FTP 클라이언트 프로그램은 평문으로 된 설정 파일에 패스워드를 종종 저장함
- 평문으로 디폴트 폴더에 패스워드가 저장되어 있으면 악성코드가 인증정보를 탈취하기에 매우 용이함
실행결과
FTP brute force 공격을 할 수 없음..
>> kali에 ftp를 구축하여 다시 연결 >> 성공
3) FTP 서버에 있는 웹 페이지 검색하기
- FTP 서버에 있는 인증정보로 서버에서 웹 접속을 제공하는 지 확인해야함
> FTP 서버의 디렉토리에 있는 콘텐츠의 목록을 가져온 후 디폴트 웹 페이지를 검색함
> returnDefault() 함수는 FTP 연결을 입력받아서 발견한 디폴트 페이지를 배열로 반환함
> NLST에서 반환하는 각 파일 이름을 디폴트 웹 페이지 파일 이름과 일치하는 지 확인함
> 발견된 디폴트 페이지를 retList라는 배열에 추가 후 이 배열을 반환함
4) 웹 페이지에 악성코드 삽입하기
- 악성 리다이렉트로 감염
> 메타스플로잇을 사용하여 서버를 만들고 http://10.10.10.112:8080/exploit에 악성 페이지를 호스트함.
> 공격코드 : ms10_002_aurora
> 취약한 컴퓨터로 해당 주소에 접속하게 될 경우 컴퓨터가 해킹될 것임
> 성공한다면 악성코드는 리버스 TCP 쉘을 생성하여 피해자의 윈도우 커맨드 프롬프트에 접근 가능하게 됨
> 커맨드 쉘에서 감염된 피해자의 관리자 권한으로 명령 실행 가능
+ 감염된 서버에 리다이렉트를 추가하여 공격자가 설치한 악의적인 서버로 방문자가 리다이렉트되도록 해야함
- 피해자 서버에 있는 디폴트 페이지를 다운로드
- iframe 삽입 후 다시 악의적인 페이지를 피해자 서버에 업로드함.
5) 모든 공격 통합하기
- attack()함수에 모든 공격을 포함시킴 - 사용자 이름, 패스워드, 호스트 이름, 리다이렉트 사이트 입력
> 인증정보를 가지고 FTP 서버 로그인
> 스트립트를 통해 디폴트 웹 페이지 검색
> 스크립트에서 디폴트 페이지를 다운로드하여 악성 리다이렉트 추가
> 스크립트를 통해 다시 감염된 페이지를 업로드
> 웹 서버 방문자 공격
'Security' 카테고리의 다른 글
포렌식 수사(메타데이터) (0) | 2020.03.13 |
---|---|
컨피커, 노력하면 된다 (0) | 2020.03.12 |
침투 테스트(포트스캐너 만들기, SSH 봇넷 구축하기) (0) | 2020.03.11 |
유닉스 패스워드 크래커, 압축파일 패스워드 크래커 (0) | 2020.03.09 |
파이썬 언어(파일I/O, Sys 모듈, OS모듈) (0) | 2020.03.08 |