Webshell 의 흔 한 검색 방법 과 신뢰 할 수 있 는 도구 추천

4226 단어 webshell웹 보안
목차
웹 셸 소개 웹 셸 검 측 1 정적 검 측 2 파일 속성 검 측 3 데이터 (로그) 검 측 4 동적 검 측 5 통계학 검 측 6 흔 한 신뢰 도 검사 도구
Webshell 소개
보안 요원 이 말 하 는 웹 셸 의 웹 은 웹 서버 를 말 합 니 다. 셸 은 스 크 립 트 언어 로 작 성 된 스 크 립 트 프로그램 입 니 다. 웹 셸 은 보통 실행 가능 한 스 크 립 트 파일 입 니 다.공격 자 는 침입 할 때 각종 방식 으로 웹 셸 을 얻어 사이트 의 통제 권 을 얻 은 다음 에 그 후의 진일보 한 침입 행 위 를 해 야 한다.웹 셸 에서 흔히 볼 수 있 는 획득 기법 은 웹 셸 직접 업로드, SQL 주입 업로드, 원 격 파일 포함 (RFI), FTP, 백 스테이지 에서 제공 하 는 데이터 복구 등 기능, 데이터 베이스 압축 등 을 포함한다.웹 셸 의 일반적인 기능 은 셸 명령 실행, 코드 실행, 데이터베이스 매 거 진, 파일 관리 에 국한 되 지 않 습 니 다.
웹 셸 분 류 는 셸 에 포 함 된 기능 에 따라 큰 말, 작은 말, 한 마디 의 목마 로 나 눌 수 있다.스 크 립 트 프로 그래 밍 언어 분류: jsp、asp、aspx、php、python、perl 등.
웹 셸 검사
웹 셸 은 보통 스 크 립 트 파일 을 실행 할 수 있 습 니 다. 웹 셸 에 대한 검 측 은 정적 파일 의 스 캔 검 측 은 흔히 볼 수 있 는 방법 이지 만 공 방 기술 의 대항 발전 과 스 크 립 트 언어의 인 코딩 유연성 으로 인해 정적 파일 의 변형 이 점점 많아 지고 검출 률 요 구 를 만족 시 키 지 못 해서 데이터 검 측, 실행 시 검 측 등 방안 이 나 타 났 습 니 다.아래 상세 한 소개:
1 정적 검출
정적 파일 검 사 는 일반적인 방법 입 니 다.파일 정적 스 캔 은 블랙리스트 특징 문자열, '고위 험 함수' 가 나타 날 확률 이 높 은 조합 을 기반 으로 합 니 다. 보통 하나의 업무 CGI (공용 게 이 트 웨 이 인터페이스) 파일 로 파일 읽 기와 쓰기, 명령 실행, 코드 실행, DB 작업 파일 업로드 등 몇 가지 함수 가 동시에 나타 나 는 경우 가 거의 없습니다.이 방법 은 가장 간단 하지만 효과 가 좋 지 않다.웹 셸 문법 변화 가 얼마나 멀 고 변화 가 유연 하 며 변성 후 검 측 이 어렵 기 때문이다.흔히 볼 수 있 는 특징 은 다음 과 같다. 1.1 시스템 호출 명령 실행 함수, 예 를 들 어 eval、system、cmd_shell、assert、wScript.shell、shell.application、excute、run、shellexcute 등 이 존재 한다.1.2 시스템 에서 호출 된 파일 조작 함수 가 존재 합 니 다. 예 를 들 어 fopen、fwrite、readdir 등;1.3 데이터베이스 조작 함수 가 존재 하고 시스템 자체 의 저장 과정 을 호출 하여 데이터 베 이 스 를 연결 합 니 다.1.4 매우 깊 은 자신의 숨겨 진 성, 위장 성 을 가지 고 웹 소스 코드 에 장기 적 으로 잠복 할 수 있다.1.5 파생 변종 이 많 으 며 사용자 정의 복호화 함수, xor, 문자열 반전, 압축, 재 구성 차단 등 방법 으로 검 측 을 돌 릴 수 있 습 니 다.
2 파일 속성 검사
파일 의 특징 을 검사 합 니 다. 2.1 파일 의 소유자: 회사 온라인 시스템 계 정 인지, nginx\tomcatobody 등 응용 계 정 이 아 닌 지;2.2 생 성 시간: 정상 적 인 파일 생 성 시간 은 온라인 시간 이나 작업 시간 또는 이 경로 의 대부분 파일 과 일치 해 야 합 니 다. 이 시간 이 아 닌 파일 은 이상 할 수 있 습 니 다.2.3Inode: 파일 을 통일 적 으로 업로드 하기 위해 파일 의 indoe 는 기본적으로 연속 되 어야 합 니 다.2.4 경로: 정상 적 인 업로드 점 은 업무 에 필요 한 파일 형식 만 있어 야 하고 웹 셸 파일 은 이 경로 에 나타 나 면 안 됩 니 다.
3 데이터 (로그) 검색
3.1 전송 특징: 일부 흔히 볼 수 있 는 웹 셸 의 http 요청 은 고정 적 이 어야 하 며 cookie、http header、data、payload 특징 을 통 해 감 측 할 수 있다.3.2 소스 IP/UA 특징: 정상 적 인 업무 url 은 자주 방문 되 고 웹 셸 은 한 동안 개별 IP/UA 만 방문 합 니 다.3.3 검색엔진 특징: 정상 적 인 업무 url 은 일반적으로 검색엔진 에 의 해 기어 오 른 흔적 이 있다.3.4 방문 총량 이 적다.
4 동적 모니터링
4.1 RASP 클래스: 웹 셸 은 복사 코드 와 유연 한 쓰기 가 가능 하기 때문에 정적 검 사 는 정성 들 여 디자인 된 살 리 지 않 는 셸 을 만나면 일치 하기 어렵 습 니 다. RASP 작업 은 실행 층 에 있 고 opcode 는 웹 셸 의 의 도 를 복원 합 니 다.RASP 로 그 는 wenshell 에서 호출 된 Function 과 Param 을 상세 하 게 기록 합 니 다.위험한 Function 포함 system、oppen、exec、passthru、move_upload_file、file_get_content、phpinfo.4.2HIDS 클래스: 웹 셸 은 반등 하 는 셸 보다 사용 하기에 편리 하지 않 습 니 다. 해커 는 보통 반등 셸 을 사용 하여 상호작용 효과 가 좋 은 셸 을 얻 습 니 다. 이 특징 을 바탕 으로 응용 서버 사용자 nginx, tomcat, nobody 등 사용자 의 프로 세 스 를 검사 할 수 있 습 니 다. 예 를 들 어 ps -ef |grep nobody|grep -v php-cgi|grep-vnginx|grep -v grep.또한 셸 프로 세 스 를 되 돌려 주 는 핸들 (0\1) 은 보통 socket 을 가리 키 거나 pipe 를 가리킨다.이 사고방식 도 대항 성 이 강하 지 않 은 반등 셸 을 검출 할 수 있다.4.3 기계 학습: 기계 학습 알고리즘 을 통 해 웹 셸 의 특징, 훈련 모델 을 귀납 하고 새로운 웹 셸 과 비교한다.예 를 들 어 베 이 루스 알고리즘.
5 통계학 검 측
웹 셸 은 인 코딩 과 암호 화 를 거 쳤 기 때문에 특별한 통계 특징 을 나타 내 고 이런 특징 에 따라 통계 학습 을 한다.현재 인터넷 에서 비교적 많이 말 하 는 것 은 NeoPi 가 다섯 가지 검 측 방법 을 제공 하 는 것 이다. 5.1 정보 엔트로피 (Entropy): ASCII 코드 표를 사용 하여 파일 의 불확실 성 을 평가 하 는 것 이다.5.2 최 장 단어 (LongestWord): 가장 긴 문자열 은 잠재 적 으로 인 코딩 되 거나 헷 갈 릴 수 있 습 니 다.5.3 중합 지수 (Indexof Coincidence): 저 중합 지 수 는 파일 코드 가 잠재 적 으로 암호 화 되 거나 혼 효 된 것 을 예시 합 니 다.5.4 특징 (Signature): 파일 에서 알려 진 악성 코드 문자열 세 션 을 검색 합 니 다.5.5 압축 (Compression): 비교 파일 의 압축 은 이런 검 측 방법 을 사용 하 는 것 보다 뚜렷 한 약점 이 존재 한다. NeoPi 의 검 측 중심 은 헷 갈 리 는 코드 를 식별 하 는 데 있다. 모호 한 코드 를 식별 하거나 편 성 된 목 마 를 헷 갈 리 게 하 는 데 잘 나타난다.모호 하 게 처리 되 지 않 은 코드 인 웹 셸 은 NeoPi 에 의 해 감지 되 기 어렵다.
6. 흔히 볼 수 있 는 검사 도구
명칭.
플랫폼
링크
검 측 효과
D 방패
(Windows)
http://www.d99net.net/
하마.
(Windows&Linux)
https://www.shellpub.com/
샘플 검 측 량: 1039
Linux Malware Detect
(Linux)
http://www.rfxn.com/projects/linux-malware-detect/
장정 목 운
(Linux)
https://github.com/chaitin/cloudwalker
ClamAV
(Windows&Linux)
https://www.clamav.net
샘플 검 측 량: 432
shelldetect.py
(Python/PHP)
https://github.com/emposha/Shell-Detector

좋은 웹페이지 즐겨찾기