標籤:http 使用 strong 資料 html 管理
剛才看到烏雲有人發帖問:網上流傳的修改來電的軟體實現原理是什嗎?
關於這個東西,我還真瞭解一點(本人涉獵甚廣,啥都喜歡研究一番)……
其實很多年前就有此類技術分析文檔,幾年前我曾看過一篇技術分析文章,詳細講了這個實現原理,年代久遠,尼瑪文章找不到了,但是大概內容還記得點,結合搜尋,整理了點東西出來。
估計有很多人知道,這種技術是由於不同網路中轉寄資料用的網關在作怪,但是並不明白更底層的原理,本文將從最底層、最基礎的電話傳輸協議、資料幀開始講……
關於修改來電顯示號碼的原理,這個真的是十分古老的東西了,老古董、老掉牙的玩意兒了,起碼有二十多年了(和我差不多大,-_-|||),要弄清楚這個原理,首先還得瞭解下來電號碼顯示的原理。
其實嘛,修改來電顯示這個玩意兒,任何一個電話、通訊、網路電話(VoIP電話)、手機製造公司的工程師、技師都曉得,就和駭客必須曉得IP地址是啥一樣,而且他們都可以輕鬆地做到,無任何難度……
首先瞭解一點電話網路中資料轉送的知識,資料如下:
以下資料摘自:來電顯示原理,電話主叫號碼資訊的識別及實現
電話主叫號碼資訊的識別及實現
主叫號碼資訊識別及傳送(CID, Calling Identity Delivery, 呼叫身份傳遞),是指交換器將主叫使用者的主叫號碼及呼叫的日期、時間等資訊傳送給被叫使用者,由被叫號使用者的主叫號碼顯示器將資訊顯示出來並儲存。以便使用者摘機前就知道到底誰打電話來,或外出回來後查閱誰來過電話。(90年代以前的電話網路居然沒有來電顯示這個功能,這尼瑪怎麼用的,難以想象……)
它是由具有主叫號碼資訊識別服務功能的交換器與具有主叫號碼顯示服務功能的終端相配合來實現,在終端上可以顯示主叫電話機的號碼、呼叫時間等資訊。
一、CID技術產生背景
美國貝爾通訊研究室(BELLCORE)首先引入話音頻帶資料通訊的調製解調方式來實現CID業務,並在1990年提出了相關技術建議(TR-TS-000031, ISUE3,1990年1月),該建議經過多次修改後被稱為Bell202建議。資料傳送採用了移頻鍵控(FSK)方式,通常稱為移頻鍵控方式。
與此同時,歐洲以瑞典為代表的研究機構為能在自己生產的交換器上方便地實現主叫號碼傳送(Calling Number Delivery)業務,電話終端與交換器之間採用複頻式訊號號碼傳送方式作為解決方案,通常稱為複頻式訊號方式。
經過多年的研究和發展,許多國家認為移頻鍵控方式有較好的發展前景,紛紛以此為基礎來制定本國的標準。到目前為止,採用移頻鍵控方式的國家和地區有美國、加拿大、比利時、英國、西班牙、日本、新加坡和中國等。
…… 省略無關內容 ……
二、CID業務功能電話網上開展CID業務,必須考慮各方權益。
主叫使用者可以根據自己的意願在一定許可權內控制是否向被叫使用者傳送自己的號碼。被叫使用者在登記主叫資訊顯示許可權後,交換器應向被叫使用者傳送主叫資訊。
1、主叫使用者叫資訊顯示許可權
主叫使用者主叫資訊顯示權即主叫使用者是否允許向被叫使用者顯示主叫資訊。
作為主叫使用者,發出呼叫時可以有允許CID和限制CID兩種選擇。
(1)允許顯示
主叫使用者的一切正常撥號,均為允許CID的呼叫,應向被叫使用者所在終端交換器傳送主叫資訊。這類使用者也可以要求在某次呼叫時不向被叫使用者顯示主叫資訊,這時需要在該次呼叫撥號之前加撥一標誌號碼(如**,發端交換器收到**後,判別定為該次呼叫的CID業務被限制,送出限制標誌,終端交換器不將該次呼叫的主叫號碼送到被叫終端裝置。
(2)限制顯示
主叫使用者的一切正常撥號,均為限制CID的呼叫,其主叫號碼不送到被叫使用者終端裝置。這類使用者也可以要求在某次呼叫時向被叫使用者顯示主叫號碼,這時需要在該次呼叫撥號之前加撥一標誌號碼(如**,發端交換器收到**後,判定為該次呼叫的CID業務被允許,送出允許標誌,終端交換器將該次呼叫的主叫號碼送到被叫終端裝置。
無論主叫是允許CID使用者還是限制CID使用者,當呼叫的對方是110,119,120,122等特服終端時,其主叫號碼一定要傳送到被叫終端上。
2、被叫使用者主叫資訊顯示許可權
被叫使用者主叫資訊顯示許可權即被叫使用者能否顯示主叫資訊。
(1)使用者登記主叫資訊顯示許可權
使用者登記了主叫資訊顯示許可權後,在作為被叫使用者時,終端交換器應向使用者傳送相應的顯示資訊。
·在一次呼叫有主叫號碼,則顯示“號碼+日期+時間”;
·在一次呼叫中終端交換器沒有收到主叫號碼,則顯示“O”;·在一次呼叫中如果不允許顯示主叫號碼,則顯示“P”。
(2)使用者不登記主叫資訊顯示許可權
如不登記此許可權,交換器不向此使用者發送任何資訊。
三、CID業務的基本技術
採用移頻鍵控傳送方式的交換器應具備與該方式有關的硬體環境,以及資料處理和傳送所必要的軟體環境。
1、主叫號碼及標誌在局間的傳送
主叫號碼資訊顯示是由終端交換器傳給被叫使用者終端裝置的,因此終端交換器應能順利得到主叫方號碼,這就要求發端交換器將主叫號碼等資訊通過局間信令系統(如七號信信)傳送給終端交換器,隨主叫號碼一起傳送的還有一個標誌碼,表示主叫方的意願。如“X”表示主叫號碼可以傳送給被叫使用者;“Y”表示主叫碼不願意傳送給被叫使用者。
2、主叫資訊從終端交換器到使用者的傳送
終端交換得到主叫號碼資訊後,根據被叫使用者特徵以及主叫使用者標誌碼來控制主叫號碼資訊的傳送,可以有下列幾種處理方式:
·被叫是未申請CID服務的使用者時,不傳送任何資訊;
·被叫是CID使用者時,主叫標誌是“Y”時,傳送“P”;
·被叫是CID使用者時,主叫標誌是“X”時,傳送“主叫號碼+時間+日期”;
·被叫是110,119,120,122等特服使用者時,無論主叫標誌是“X”還是“Y”均傳送主叫號碼的資訊。
終端交換器在傳送主叫號碼資訊前,還要根據被叫使用者目前所處的狀態,採用不同的傳送序列和格式。以保證傳送能順利進行。
(1)被叫話機在掛機狀態
對於採用移頻鍵控方式的交換器,終端交換器將主叫號碼資訊在第一次響鈴和第二次響鈴間隔期間,將主叫號碼資訊以移頻鍵控(FSK)的方式傳送給被叫使用者終端裝置。
(2)被叫話機處在通話狀態
當被叫使用者登記某些業務(如插撥)時,若被叫使用者處在通話狀態下,則終端交換器仍可向被叫使用者傳送主叫資訊。(也就是如今多卡多待手機可以同時接聽、撥打所依靠的條件。)
例如,具有CID功能的使用者乙與使用者甲通話時,又有使用者丙呼叫使用者乙,則在使用者乙終端裝置上顯示使用者丙的識別資訊。
…… 省略無關內容 ……
來電號碼顯示實際上是現代電信交換網路可以提供的一項服務業務。就其機理而言,是指交換器對使用者提供來電號碼專用格式的資料的傳送,而使用者終端利用符合資料解碼格式要求的端機進行接收和顯示。
當交換器發出第一次響鈴訊號後,緊接著發出一串調製訊號(現用的主要有FSK和DTMF兩種格式的訊號),此訊號包含著撥號方的電話號碼、日期、時間、姓名等資訊。
來電號碼顯示器在每一次響鈴訊號的喚醒下,開始接收FSK訊號,經解碼晶片(如Motorola 的RC145447)獲得其中資訊,由單片機進行格式處理並在螢幕上顯示出來。
同樣,若傳輸過來的是DTMF來電號碼資訊,只需由DTMF解碼晶片來進行資料解碼,即可顯示DTMF的來電號碼。
…… 省略無關內容 ……
以上就是電話通訊協議的極少一部分內容,資料太長,各位看的是不是有點暈了,沒關係,我畫個簡單的圖給大家解釋下。
其實嘛,這個玩意兒和互連網通訊協議有很多相似的地方,我畫個圖:
主叫 → 電話線路 → 終端交換器(主叫的網關) → 電訊廠商骨幹網路 → 終端交換器(被叫的網關) → 電話線路 → 被叫
各個裝置的資訊顯示許可權如下:
主叫:可以控制是否向被叫使用者傳送自己的號碼,也就是手機系統設定的那個“私人”功能,但是該功能需要電訊廠商支援,但是現在的電訊廠商都是預設傳輸的,所以是個擺設……
終端交換器(主叫的網關):有權控制是否發送主叫號碼(110,119,120,122等特殊使用者除外,必鬚髮送!),並且可以為所欲為的修改,當然,正規電訊廠商的機器是不會這麼乾的……
電訊廠商骨幹網路:傳輸資料,不作任何修改。(公安監聽電話就在此處哦,親~)
終端交換器(被叫的網關):許可權同上,但是這裡是判斷被叫有沒有開通來電顯示功能,開通了就發,沒開通就不發。是的,沒錯,就尼瑪這個破功能,電訊廠商每個月還收個3元的來電顯示費用,臥槽……
被叫:判斷是否有附加參考資料集,有就顯示,否則不進行任何操作……
我們從以上的資料中得知,電話通訊網路不是依靠電話號碼進行使用者識別的,而來電顯示功能則只是,在交換器發出第一次響鈴訊號後,附加了包含一個主叫使用者資訊的資料包而已,包含著撥號方的電話號碼、日期、時間、姓名等資訊,來電號碼顯示器在每一次響鈴訊號的喚醒下,開始接收FSK訊號,經解碼晶片獲得其中資訊,由單片機進行格式處理並在螢幕上顯示出來。
就好像在互連網中通訊的時候,我向某個QQ號發送訊息的時候,我可以選擇是否發送暱稱(電話號碼等資訊),而且這個暱稱是完全可以修改的。
既然知道了傳輸原理,那麼改號軟體是如何做到的呢???
這裡就要瞭解一下VoIP(IP電話、網路電話)的知識了……
VOIP:http://baike.baidu.com/view/1475.htm
VoIP(Voice over Internet Protocol)簡而言之就是將類比聲音訊號(Voice)數字化,以資料封包(Data Packet)的形式在 IP 資料網路 (IP Network)上做即時傳遞。
VoIP最大的優勢是能廣泛地採用Internet和全球IP互連的環境,提供比傳統業務更多、更好的服務。
VoIP可以在IP網路上便宜的傳送語音、傳真、視頻、和資料等業務,如整合通訊、虛擬電話、虛擬語音/傳真郵箱、查號業務、Internet話務中心、Internet呼叫管理、電視會議、電子商務、傳真儲存轉寄和各種資訊的儲存轉寄等。
VoIP相對比較便宜,為什嗎?
VoIP電話不過是互連網上的一種應用,網路電話不受管制。因此,從本質上說,VoIP電話與電子郵件,即時訊息或者網頁沒有什麼不同,它們均能在經過了互連網串連的機器間進行傳輸。這些機器可以是電腦,或者無線裝置,比如手機或者掌上裝置等等。
為什麼VoIP服務有些要收錢,有些卻免費?
VoIP服務不僅能夠溝通VoIP使用者(就像QQ語音交談一樣),而且也可以和電話使用者通話,比如使用傳統固話網路以及無線行動電話通訊的使用者。對這部分通話,VoIP服務商必須要給固話網路電訊廠商以及無線通訊電訊廠商支付通話費用。這部分的收費就會轉到VoIP使用者頭上。網上的VoIP使用者之間的通話可以是免費的。
近年來,網路通訊勢不可擋,qq、飛信等即時通訊軟體衝擊著傳統的電話通訊方式,從而也造就了很多網路新貴,眾投資者企望在網路通訊中分一杯羹。繼qq、飛信等軟體之後,近年來開發的網路電話,被企業和個人廣泛應用於國內外長途通話中。
與此同時,近年來一些網路電話“話吧”在學校、居民住宅區、工業區等迅速興起。與幾年前興起的傳統“IP公話超市”不同的是,網路電話的運營成本更為低廉,且進入門檻更低。只要一台電腦、一條寬頻、幾台電話機加上一個計費軟體就可以操作,網路公司向加盟者或者電訊廠商提供支援人員即可。由於像平常打電話一樣方便,網路“話吧”迅速佔據中低收入和外來打工人員的市場,並對傳統電話業務形成衝擊。
因為成本低廉,市場廣闊,VOIP成為一種“暴利”的投資項目,但由於沒有政策支援,因此仍然存在運營和管理上的漏洞,發展前景尚不明朗,投資需謹慎。經過幾年的發展,雖然網路電話被廣泛使用,但網路電話業務目前還處於“灰色地帶”,法律沒有限制也沒有允許,而市面上出現的網路電話“話吧”也並沒有營業執照。另外,網路電話本身也有先天缺陷,通話品質受到網路好壞的影響,停電時候無法使用,清晰度上也與傳統的固話有差距,其次,網路電話還存在被偷聽偷錄的風險。
…… 省略無關內容 ……
又是很長的一段資料,各位又看的懵了吧,呵呵呵,我用簡單的語言概括下……
其實VoIP就是網路語音交談,把音頻資料通過互連網從一台電腦傳輸到另一台電腦,無國界、遠程傳輸,就像QQ語音一樣,雙方都裝個軟體就行了……
那麼您可能會問了:二貨!你胡扯什麼呢?你扯了這麼多,這尼瑪和改號軟體有毛關係??????
莫急,莫急,你馬上就豁然開朗了!!!!(估計聰明的讀者已經想到了! (^o^))
為了清楚地描述,我再來畫個圖:
VoIP:
使用者A → 電腦 → ISP電訊廠商介面 → 互連網骨幹網路 → ISP電訊廠商介面 → 電腦 → 使用者B
尼瑪,這個運行模式就不解釋了吧?你丫天天在用,俗稱:上網!!!!
親,還記得電話網路的圖嗎??
電話網路(稍微簡化了下):
使用者A → 電話 → 主叫的網關 → 電訊廠商骨幹網路 → 被叫的網關 → 電話 → 使用者B
哦呵呵呵呵,如果VoIP和電話,這兩個完全不相干的網路結合的話,會發生什嗎事呢?
那麼,神奇的地方來了!!!親,看圖:
使用者A → 電腦 → 上網介面 → 互連網骨幹網路 → 上網介面 → 電腦 → 使用者B 上車、下車網關 使用者C → 電話 → 主叫網關 → 電訊廠商骨幹網路 → 被叫網關 → 電話 → 使用者D
上車、下車網關:
也稱為中繼網關、落地網關,通過 IP 介面與使用者端的語音接入網關相連,通過E1介面與局用程式控制交換器相連。
中繼網關將 IP 分組包與 PCM 的相互轉換,從而實現語音接入網關同公關電話網 (PSTN) 的互連互連。
將一路呼叫從傳統電話線轉接到IP網上的網關一般稱為上車網關,而將IP網上的來電轉接進電話網的那個則稱為下車,或者落地網關。
該網關需要從電話電訊廠商處申請,然後串連你的伺服器即可。
現在,電話網路和互連網可以互連互聯了。
再回到改號的話題上,既然你無法控制電話網路網關,那麼從網路核心裝置(落地網關)上進行呼叫,我們只要在信令上送出一個虛擬號碼,被叫的所在地裝置便會認為這是真實的主叫號碼,所以它給被叫的來電顯示,就是我這個虛擬號碼,這是一個很簡單的網路欺騙。
行動電信業者當然可以做到,但我相信沒有哪個電訊廠商會這麼做,但我們應該看到,與電訊廠商的網路裝置相串連的還有許多服務提供者(SP),他們數量眾多,良莠不齊,難說不會有人違規操作;當然還有其它電訊廠商的來話,如固定電話網路的來電,或國外的來電,他們也都可以做到。
這算是電訊廠商網路的一個漏洞,而且還不好修補。
流程可以簡單的概括為:
1、首先在智能手機或電腦上預置一個VoIP軟體,該軟體指向某預置網關,該網關為非法落地網關。
2、並且該網關允許並接收用戶端發送指定主叫號碼,並將此號碼傳遞給被叫號碼所屬網關。
3、撥電話吧,隨意偽造號碼。
並且不受110等特殊號碼限制,因為從“源網關”處,就已經偽造了號碼,所以你可以給110打一個來電號碼是110的電話……
扯了一大堆,核心的東西就在這個落地網關上!不只是互連網,不同的網路之間通訊都有類似的網關。
這個網關夾在主叫方與電信公司的網關中間,修改主叫號碼後再把修改結果送入電信公司的網關係統中。
他們自己有一個平台,這個平台與電訊廠商有介面,或者與國外的一些IP電訊廠商存在介面。
如果你需要,首先會給你的電腦或手機裝一個軟體,建立一個與他這個平台的通道,但你使用這項功能的時候,就等於接入了他的平台,他的平台再幫你實現這類比任意號碼呼叫。
最後,總結一下:
“來電顯示修改”是利用了網路IP電話網關技術,先來看一下普通有線電話上來電號碼顯示的原理,首先交換器傳送電話撥打方的包含來電號碼的資料,而接聽方戶終端進行接收和顯示,當然這些資料必須符合專用的解碼格式。
當交換器發出第一次響鈴訊號後,便接著發出一串調製訊號,此訊號包含著撥號方的電話號碼、日期、時間、姓名等資訊。
來電號碼顯示器在每一次響鈴訊號的喚醒下,開始接收訊號,經解碼晶片擷取其中的資訊,最終處理過後在螢幕上顯示出來。
這樣一來,撥打方發出呼叫後,首先要傳至電信公司的交換系統,通過該系統的身份核查後,被叫方才能接收到訊號。
“平台”實際上就是網路IP電話,電信公司設定的“電話網關”就相當於傳統通話的交換系統。
所謂的來電顯示修改,也製作了一個網關,夾在主叫方與電信公司的網關中間,用自己的網關隨意修改主叫號碼,再把修改結果送入電信公司的網關係統中。目前,兜售修改軟體的公司大都用的這個原理。
由於這些電話是通過中轉平台或者電腦軟體撥打,並不是兩方之間的串連,因此只要按顯示的號碼撥過去,對方是無法接聽的。
目前,互連網上的所有網路電話,例如:Skype、UUCall 等公司,全部都可以做到修改來電號碼,但他們為了合法,所以只允許你修改為你自己的手機號碼,並且要求手機簡訊驗證後,才可以修改。
實際上,他們的管理員可以任意修改……
而這些偽造來電號碼的公司,和這些網路電話公司的運行模式完全一致,只不過他們是接非法業務……
為什麼近兩年這種偽造來電號碼的非法業務越來越多?
因為現在網路越來越發達,速度越來越快,成本越來越低,上手簡單,而且又可以和電話網路互連互聯,這比從電話公司處偽造號碼(最早的偽造方式)容易的不是一點半點鐘,促進了這類公司的發展,他們和雨後春筍一樣冒了出來……
如果從網路安全的角度來講,傳統的以手機、電話號碼作為驗證使用者身份的方式(例如某某手機密保),已經徹底崩潰了……