首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

python黑帽子源码

python黑客工具实战

+

“脚本小子和职业黑客的区别是编写自己的工具,少用别人开发的工具。” ——查理.米勒

《python黑帽子—黑客与渗透测试编程之道》,是一本很好的书,书的作者是Immunity公司的高级安全研究员,他在公司的主要工作就是寻找软件的漏洞、逆向工程、撰写攻击代码,以及使用Python编程。同时,他还是畅销书《Python灰帽子—黑客与逆向工程师的Python编程之道》的作者,那是一本介绍如何使用Python进行安全分析的书籍。以后,我可能会向大家介绍。

好了,今天往后,我会将这本书的源码发在公众号上,如果想进一步交流,可以联系我。

1.TCP客户端

在渗透测试的过程中,我们经常会遇到需要创建一个TCP客户端来连接服务,发送垃圾数据,进行模糊测试或者进行其他任务的情况。如果你工作在一个独立的大型企业网络环境中,那么你不会拥有丰富的网络工具或者编译器,你甚至可能会在一个不具备基本的复制和粘贴功能或者失去互联网连接的环境下工作。在这种环境下,你需要迅速创建一个TCP客户端。

源码:

import socket

target_port = 80

#建立一个socket对象

client = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

#连接服务器

client.connect((target_host,target_port))

#发送一些数据

client.send("GET / HTTP/1.1\r\nHost:google.com\r\n\r\n")

#接收一些数据

response = client.recv(4096)

print response

很简单吧,就短短几行代码,用的是python自带的socket模块。

接下来,我们写一个TCP服务端

import socket

import threading

bind_ip = "0.0.0.0"

bind_port = 9999

server = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

server.bind((bind_ip,bind_port))

server.listern(5)

print "[*] Listening on %s:%d" % (bind_ip,bind_port)

def handle_client(client_socket):

request = client_socket.recv(1024)

print "[*] Received: %s"%request

client_socket.send("ACK!")

client_socket.close()

while True:

client,addr = server.accept()

print "[*] Accepted connection from %s:%d" % (addr[0],addr[1])

client_handler = threading.Thread(target=handle_client,args=(client,))

client_handler.start()

Happy

是不是出乎你的预料,有句话说的好嘛:“人生苦短,快学Python”,想想,要是用c语言写着两段代码,呵呵,那可就多了去了。

HELLO 2018

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180123G0K6JA00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券