Asterisk PBX隧道驅(qū)動(dòng) 存在多個(gè)遠(yuǎn)程拒絕服務(wù)漏洞
瑞星 編譯 2007/07/23
受影響系統(tǒng):
- Asterisk Asterisk 1.4.x
- Asterisk Asterisk 1.2.x
- Asterisk Asterisk 1.0.x
- Asterisk Business Edition B.x.x
- Asterisk Business Edition A.x.x
- Asterisk AsteriskNOW < beta7
- Asterisk Appliance Developer Kit 0.x.x
- Asterisk s800i 1.0.x
不受影響系統(tǒng):
- Asterisk Asterisk 1.4.8
- Asterisk Asterisk 1.2.22
- Asterisk Business Edition B.2.2.1
- Asterisk AsteriskNOW beta7
- Asterisk Appliance Developer Kit 0.5.0
- Asterisk s800i 1.0.2
描述:
Asterisk是開放源碼的軟件PBX,支持各種VoIP協(xié)議和設(shè)備。
Asterisk IAX2的隧道驅(qū)動(dòng)(chan_iax2)中存在拒絕服務(wù)漏洞。如果Asterisk在有效會話中接收到了LAGRQ或LAGRP幀,就可能觸發(fā)空指針異常。負(fù)責(zé)解析入站幀的代碼可以正確地解析IAX幀中的信息單元,然后將指針設(shè)置為空表示沒有與這個(gè)幀相關(guān)的原始數(shù)據(jù)負(fù)載,但沒有將原始負(fù)載中用于表示字節(jié)數(shù)的變量設(shè)置為0。由于原始數(shù)據(jù)長度為非0,處理LAGRQ和LAGRP幀的代碼就會試圖從空指針拷貝數(shù)據(jù),導(dǎo)致崩潰。
Asterisk輕型隧道驅(qū)動(dòng)(chan_skinny)中存在拒絕服務(wù)漏洞。如果Asterisk所接收到的報(bào)文聲明長度為0到3之間,之后為所聲明長度+
4或更多字節(jié),則由于超長的memcpy可能會導(dǎo)致出現(xiàn)分段錯(cuò)誤。
Asterisk在RTP棧的STUN實(shí)現(xiàn)中存在拒絕服務(wù)漏洞。如果Asterisk在活動(dòng)的RTP端口上接收到了特制的STUN報(bào)文的話,指針就可能超過可訪問的內(nèi)存。負(fù)責(zé)解析入站STUN報(bào)文的代碼無法確認(rèn)表示STUN屬性的長度和STUN屬性頭大小是否超過了可用的數(shù)據(jù),因此數(shù)據(jù)指針可能超過可訪問的內(nèi)存,導(dǎo)致崩潰。成功攻擊要求啟用了chan_sip、chan_gtalk、chan_jingle、chan_h323、chan_mgcp或chan_skinny。
臨時(shí)解決方法:
向/etc/asterisk/modules.conf中添加noload => chan_skinny.so,然后重啟Asterisk。
廠商補(bǔ)丁:
Asterisk
目前廠商已經(jīng)發(fā)布了升級補(bǔ)丁以修復(fù)這個(gè)安全問題,請到廠商的主頁下載:
ftp://ftp.digium.com/pub/telephony/asterisk
http://www.asterisknow.org/
ftp://ftp.digium.com/pub/telephony/aadk/
http://it.rising.com.cn
相關(guān)鏈接:
乐东|
德兴市|
新河县|
修武县|
武汉市|
和林格尔县|
郧西县|
绵阳市|
德阳市|
友谊县|
乐山市|
南靖县|
天祝|
偃师市|
通海县|
达日县|
保德县|
永昌县|
湟源县|
北辰区|
贡嘎县|
仙桃市|
麟游县|
曲水县|
民丰县|
金华市|
南靖县|
温宿县|
临城县|
德保县|
靖远县|
安乡县|
梁河县|
贵阳市|
盐源县|
遵义县|
平定县|
武山县|
中西区|
吉林市|
永登县|