前言
最近在学习python网络脚本编写,利用tcp客户端/服务器学习编写了一个代替netcat(简陋)的工具,记录一下。
TCP 客户端
1 | # coding:utf-8 |
这是一个简单的TCP客户端,向指定的ip和端口发送数据,然后将返回输出,由这个我们可以拓展出一个简易的端口扫描器:
1 | # coding:utf-8 |
效果图如下:
感觉有那么点意思了= =
TCP 服务器
1 | # coding:utf-8 |
这个脚本主要用来监听端口并且接收连接,比如我们可以用刚刚的客户端给它发消息:
netdog
这个脚本使用python编写来代替netcat(大多数情况下没有nc但是有python的环境中)实现上传文件,获取shell,发送信息等等功能。
1 | # coding:utf-8 |
执行演示:
开始界面
获取shell
注意:未指定-t target
默认是监听本机,另外连接时,输入完命令需要手动CTRL+D
输入语句结束符,才能连接到shell
发送HTTP请求
下面我们试试用netdog
发送HTTP请求,获取www.baidu.com
的响应:
成功~
参考文献
《Black hat Python: Python Programming for Hackers and Pentesters》P1~P21
PS:netdog是随便取的,仅用于学习时方便记忆,侵删!
小结
刚开始学习,只学了点皮毛,继续加油吧 = =