모의해킹 (WAPT)
최근 유행한 Dalbit 그룹과 BlueShell 악성코드 공격 기법 대응책
날으는물고기
2024. 3. 9. 00:54
Dalbit 공격 그룹과 BlueShell 악성코드는 다양한 취약점과 공격 기법을 이용해 시스템을 타겟으로 하며, 특히 리눅스 시스템을 중점적으로 공격하는 것으로 나타났습니다. 이들의 공격은 주로 외부에서 접근 가능한 서버 취약점, 구성 오류, 그리고 사용자의 보안 인식 부족을 이용합니다.
취약점 요약
- 외부에서 접근 가능한 서버의 소프트웨어 취약점: 공격자들은 공개적으로 알려진 취약점이나 패치가 적용되지 않은 시스템을 이용하여 초기 침투를 시도합니다. 예를 들어, 웹 서버의 취약점, SQL 인젝션, 메일 서버 취약점 등이 이에 해당합니다.
- 내부 네트워크 설정 오류: 내부 네트워크의 잘못된 구성이나 관리 소홀로 인해 공격자가 내부 네트워크에 쉽게 침투하고 측면 이동을 할 수 있습니다.
- 사용자 인식 부족: 공격자들은 피싱 공격이나 사회공학 기법을 통해 사용자로부터 중요 정보를 획득하거나 악성코드를 실행하게 만듭니다.
예방책
- 정기적인 패치 및 업데이트: 모든 소프트웨어와 운영 체제에 대한 최신 보안 패치와 업데이트를 적용하여 알려진 취약점을 해결해야 합니다.
- 강화된 네트워크 보안: 방화벽, 침입 방지 시스템(IPS), 그리고 침입 탐지 시스템(IDS)을 포함한 네트워크 보안 솔루션을 적용하고 정기적으로 업데이트하여 내부 네트워크를 보호해야 합니다.
- 안전한 설정과 관리: 기본 설정의 변경, 불필요한 서비스의 비활성화, 강력한 암호 정책 실행 등 안전한 시스템 설정과 관리가 필요합니다.
- 사용자 교육 및 인식 향상: 사용자를 대상으로 정기적인 보안 교육을 실시하여 사회공학 공격에 대한 인식을 향상시키고, 의심스러운 이메일이나 링크에 대한 경각심을 높여야 합니다.
침해 탐지 방안
- 로그 모니터링과 분석: 시스템 및 네트워크 로그를 지속적으로 모니터링하고 분석하여 의심스러운 활동이나 이상 징후를 조기에 탐지해야 합니다.
- 정기적인 취약점 스캔 및 보안 감사: 취약점 스캐너를 사용하여 정기적으로 시스템과 네트워크를 스캔하고, 보안 감사를 실시하여 잠재적인 위험 요소를 식별합니다.
- 이상 행위 탐지 시스템의 구축: 사용자의 정상적인 행동 패턴을 학습하고 이를 기반으로 이상 행위를 탐지하는 시스템을 구축합니다. 예를 들어, 기계 학습을 이용한 보안 솔루션을 적용할 수 있습니다.
- 인시던트 대응 계획: 보안 사고 발생 시 신속하고 효과적으로 대응할 수 있는 인시던트 대응 계획을 마련하고 정기적으로 훈련을 실시해야 합니다.
위의 예방책과 탐지 방안을 종합적으로 적용하여, Dalbit 공격 그룹과 BlueShell 악성코드로 인한 보안 위협으로부터 시스템을 보호할 수 있습니다. 보안은 계속해서 변화하는 위협에 대응하기 위해 지속적으로 업데이트되고 관리되어야 합니다.
개발자와 보안 전문가가 실무에서 적용할 수 있는 아래의 예방 및 보안 강화 조치는 Dalbit 공격 그룹과 같은 위협으로부터 시스템을 보호하는 데 중요합니다.
1. 정기적인 취약점 스캔
- Linux 시스템에 대한 취약점 스캔
nmap
과OpenVAS
는 네트워크 스캔 및 취약점을 탐지하는 데 널리 사용됩니다.- 예시 명령어:
nmap -sV -T4 -A -v 192.168.1.1
OpenVAS
는 GUI를 통해 취약점 스캔을 관리할 수 있으며, CLI로도 사용 가능합니다.
- 코드 레벨의 취약점 검사
SonarQube
,Fortify
와 같은 도구를 사용하여 코드의 취약점을 정기적으로 검사합니다.- 이들은 CI/CD 파이프라인에 통합되어 자동화된 코드 검사를 제공합니다.
2. 안전한 설정과 관리
- SSH 접근 보안 강화
- SSH 접근 시
키 기반 인증
사용: 비밀번호 대신 SSH 키를 사용하도록/etc/ssh/sshd_config
파일 설정 변경.PasswordAuthentication no PubkeyAuthentication yes
Fail2Ban
설치하여 반복적인 로그인 실패를 감지하고 IP 주소를 차단sudo apt-get install fail2ban sudo systemctl enable fail2ban sudo systemctl start fail2ban
- SSH 접근 시
- 방화벽 설정
UFW
(Uncomplicated Firewall) 사용하여 불필요한 포트 닫기sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow ssh sudo ufw enable
3. 로그 모니터링과 분석
- Auditd 설치 및 구성
- 시스템 호출, 파일 액세스, 로그인 시도 등의 이벤트를 모니터링하는 Linux 감사 시스템
sudo apt-get install auditd
- 예를 들어, 특정 파일에 대한 모든 접근을 감시
auditctl -w /path/to/file -p warx -k key_name
- 시스템 호출, 파일 액세스, 로그인 시도 등의 이벤트를 모니터링하는 Linux 감사 시스템
- Syslog 서버 설정
- 중앙 로그 관리를 위해
rsyslog
나syslog-ng
를 설정하여 다른 시스템에서 로그를 수집하도록 합니다. - 중앙 로그 서버에서는
Logwatch
나ELK Stack
(Elasticsearch, Logstash, Kibana)을 사용하여 로그를 분석하고 시각화합니다.
- 중앙 로그 관리를 위해
4. 이상 행위 탐지 시스템의 구축
- Wazuh 또는 Osquery 설치
- 시스템의 이상 징후나 변경 사항을 모니터링하는데 사용
# Wazuh Agent 설치 curl -so wazuh-agent.deb https://packages.wazuh.com/4.x/apt/pool/main/w/wazuh-agent/wazuh-agent_4.x.x-1_amd64.deb sudo dpkg -i wazuh-agent.deb # Osquery 설치 sudo apt-get install osquery
- 시스템의 이상 징후나 변경 사항을 모니터링하는데 사용
5. 인시던트 대응 계획
- 인시던트 대응 스크립트 작성
- 공격이 감지되었을 때 빠르게 대응할 수 있는 스크립트를 준비합니다. 예를 들어, 의심스러운 IP 주소를 자동으로 차단하거나, 특정 서비스를 재시작하는 스크립트 등이 있습니다.
이러한 실무적 조치들은 개발 및 보안 팀이 협력하여 시스템의 보안을 강화하는데 필수적입니다. 구체적인 구현은 조직의 인프라와 정책에 따라 달라질 수 있으므로, 각 조치를 조직의 요구에 맞게 조정해야 합니다.
728x90