티스토리 뷰



왜 Asterisk 를 사용하는가?


통신 소프트웨어로 Asterisk 는 상당히 강력한 툴이다. 

오픈-소스이며, 무료 소프트웨어 이기 때문.





Asterisk 에는 어떤 공격들이 들어오는가?


통신업계에서 10년 20년의 수많은 경험을 보유하고 있지는 않지만, 

지금까지 (약 7년) 겪어본 바에 의하면 아래와 같은 공격들이 들어온다.


1) 무작위 호 전송 공격

- 이 경우는 실제로 금전적인 피해가 발생하지 않지만, 서버에 무리가 갈 수 있는 공격들이 주로 들어온다.

예를들어, 나의 통신서버 IP/Port를 알고 무작위로 호를 대량으로 전송하는 경우가 있다.

이럴 경우, 통신서버에서 호가 OUT 으로 나가지는 않지만, 무작위 신호를 대량으로 받는 것 자체가 상당한 부하를 야기한다.


2) FreePBX Web UI 를 통한 접근

- 이 경우는 FreePBX WebUI 로 접근하는 경우이며, 보통의 경우 WebUI 를 통해 extension.conf 등의 Asterisk 설정파일에 자신들의 코드를 숨겨놓는 경우이다. 

이것이 무서운 이유는 실제 관리페이지로 접근하여 서버 관리자처럼 행동하며, 금전적 손실을 불러일으킬만한 공격을 할 수 있기 때문이다.


3) 열려있는 ssh 나 ftp 포트로의 접근

- CentOS(또는 다른 linux) 로 구성된 서버는 ssh 나 ftp 로 접근할 수 있으며, 이를 통해 /var/spool/asterisk 폴더에 공격자가 정의한대로 행동하는 파일들을 생성 할 수 있다. 





어떻게 방어하는가?


1) 모든 IP 를 허용하지 마라.

mVoip 앱과 서버가 바로 연결되는 나의 경우엔 불가피하지만, 기본적으로 sip.conf 에 permit= 또는 deny= 같은 flag를 이용하여, 모든 ip 가 서버로 접근을 허용하기보단, 최소한 내가 원하는 국가, 또는 ip 만을 허용하는 것을 원칙으로 한다.


2) sip.conf 에 alwaysauthreject=yes flag를 활용하라.

이 옵션은 bad authentication 에 대한 접근을 막아줄 것이다.

유효한 username 으로 접근하더라도 bad authentication 의 공격은 답을 주지 않는다. 

(어떤 것이 bad authentication 인지에 대한 정의는 좀더 조사 후 다시 포스팅하겠음)


3) 강력한 비밀번호를 사용하라.

가장 기본적이고 당연한 이야기지만, 흔히 우리가 사용하는 모든 패스워드들을 어렵게 조합하듯이, FreePBX, SSH, Database, FTP 로 접근하는 모든 password를 숫자, 영어(대소), 특수문자를 조합하여 최대한 어렵게 만들어라.


4) AMI manager port를 막아라.

manager.conf 에서 permit= 또는 deny= 를 설정하여 접근을 막아라. 

AMI 에는 당신의 Manager Interface 비밀번호가 적혀있다.

이쪽의 보안은 반드시 강력해야 한다.


5) 하나의 sip entity 에서 여러개의 Call 을 허용하지 마라.

각각의 conf 설정에서 call-limit 옵션을 이용한다.


6) SIP username 과 extension 을 다르게 설정하라.

보통의 경우 sip username 과 extension 을 같게 설정하는 경우가 대부분이다. (나도 마찬가지..) 이유는 따로 설정하기 매우 귀찮기 때문.

하지만, 이 설정은 매우 취약하다. 따라서, SIP username 과 extension 의 이름을 다르게 설정하는 것만으로도 상당수의 공격은 이미 피해갔다고 말할 수 있다.


7) 당신의 [default] 설정이 안전한지 확인하라.

unauthentication attacker 가 당신의 어떤 context 에 접근하더라도, 이 후 이를 방어할 수 있는 대책을 마련해 놓아라.

기본적으로 당신의 sip.conf에 allowguest=no 를 설정해 놓고, 

추가적으로 extension.conf 쪽에 당신만의 dialplan 을 조합하여 이 외의 콜은 허용하지 않도록 하라.






공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함