静湖ABC段扫描器(长更)
想学习python图形化的知识,从C段扫描器开始入手,很多的扫描器只能扫描C段,对于A,B段却没有设置这个功能,所以想将扫描A段和B段的功能跟C段一起做了。
暂时的想法是,先完成C段扫描器,扫描的同时扫描常用端口,对于有相应的IP地址获取其title信息,并且使用爬虫查询其IP地址大概位置。完成C段扫描器之后再完成A,B段扫描器,为了提高扫描速度,使用多线程完善,最后做成图形化界面。
今天花两个小时先把C段扫描器暂时完成了,粗糙版本,后面再更吧
扫描器的名字就定为静湖吧,希望可以做好
import re
import requests
from fake_useragent import UserAgent
from lxml import etree
port_list=[80, 81, 88, 808, 888, 8000,8008, 8080,8001, 8888, 8020,8009,8081,8082,8083]
addr_url='http://ip.yqie.com/ip.aspx?ip='
ua = UserAgent() def headers_pool():
headers = {"User-Agent": ua.random}
return headers # def A_scan(ip):
# def B_scan(ip):
def C_scan(ip):
ip = ip.split('.')
host = []
for tmpIP in range(1, 256):
ip[-1] = str(tmpIP)
host.append(".".join(ip))
return host def get_addr(ip):
url = addr_url + ip
rep = requests.get(url)
html = etree.HTML(rep.text)
content = html.xpath('//input[@class="displayno_address"]/@value')[0]
print ip + " >>>>> " + content def get_rep(ip,port):
url1 = 'http://' + str(ip) + ':' + str(port)
url2 = 'https://' + str(ip) + ':' + str(port)
try:
rep1 = requests.get(url1,headers=headers_pool(),timeout=3,verify=False)
if (rep1.status_code==200):
get_title(url1,rep1)
get_addr(ip)
except:
pass
try:
rep2 = requests.get(url2,headers=headers_pool(),timeout=3,verify=False)
if (rep2.status_code==200):
get_title(url2,rep2)
get_addr(ip)
except:
pass def get_title(url,rep):
title=re.findall(r'<title>(.*?)</title>', rep.text)[0]
print("[+] "+url+" >>>>> "+title) def check_ip(ip):
if re.compile(r"^\d+\.\d+\.\d+\.\d+$").match(ip):
return True
return False def scan(ip):
if(check_ip(ip)):
host=C_scan(ip)
for url in host:
for port in port_list:
get_rep(url,port)
else:
print("ip error!!") def start():
print("hello world!")
print("now please waiting ....") def main():
start()
ip='47.94.132.67'
scan(ip) if __name__=='__main__':
main()
静湖ABC段扫描器(长更)的更多相关文章
- lsll 加载段限长指令
static inline unsigned long get_limit(unsigned long segment) { unsigned long __limit; __asm__(&quo ...
- web网络漏洞扫描器编写
这两天看了很多web漏洞扫描器编写的文章,比如W12scan以及其前身W8scan,还有猪猪侠的自动化攻击背景下的过去.现在与未来,以及网上很多优秀的扫描器和博客,除了之前写了一部分的静湖ABC段扫描 ...
- 专访黄勇:Java在未来的很长一段时间仍是主流(把老板当情人,把同事当小孩,把客户当病人)
url:http://www.csdn.net/article/2015-09-06/2825621 2015-09-06 13:18 摘要:本文采访了现任阿里巴巴公司系统架构师黄勇,从事近十年的Ja ...
- 如何避免后台IO高负载造成的长时间JVM GC停顿(转)
译者著:其实本文的中心意思非常简单,没有耐心的读者建议直接拉到最后看结论部分,有兴趣的读者可以详细阅读一下. 原文发表于Linkedin Engineering,作者 Zhenyun Zhuang是L ...
- 数据段描述符和代码段描述符(一)——《x86汇编语言:从实模式到保护模式》读书笔记10
一.段描述符的分类 在上一篇博文中已经说过,为了使用段,我们必须要创建段描述符.80X86中有各种各样的段描述符,下图展示了它们的分类. 看了上图,你也许会说:天啊,怎么这么多段描述符啊!我可怎么记住 ...
- Groovy系列-groovy比起Java--有哪些地方写起来更舒服?
groovy比起java-有哪些地方写起来更舒服 java发展缓慢,语法落后冗余 说起java,其实java挺好的,java现在的性能也不错,但是,java的语法显然比较落后,而且冗余,getter/ ...
- 不同特权级间代码段的跳转{ 门 + 跳转(jmp + call) + 返回(ret) }
[0]写在前面 0.1)我们讲 CPU的保护机制,它是可靠的多任务运行环境所必须的: 0.2) CPU保护机制:分为段级保护 + 页级保护: 0.2.1)段级保护分为:段限长 limit 检查.段类型 ...
- Kolla 让 OpenStack 部署更贴心
目录 目录 Kolla 简介 Kolla & Kolla-ansible 部署 OpenStack 准备操作系统基础环境 准备 Python 基础环境 准备 Docker 基础环境 安装 ko ...
- 让Python更优雅更易读(第一集)
变量和注释 1.变量 在编写变量尽量要让其清晰只给,让人清除搞清楚代码的意图 下方两段代码作用完全一样,但第二段代码是不是更容易让人理解 value = s.strip() username = in ...
随机推荐
- Spark Shuffle机制详细源码解析
Shuffle过程主要分为Shuffle write和Shuffle read两个阶段,2.0版本之后hash shuffle被删除,只保留sort shuffle,下面结合代码分析: 1.Shuff ...
- [C#.NET 拾遗补漏]12:死锁和活锁的发生及避免
多线程编程时,如果涉及同时读写共享数据,就要格外小心.如果共享数据是独占资源,则要对共享数据的读写进行排它访问,最简单的方式就是加锁.锁也不能随便用,否则可能会造成死锁和活锁.本文将通过示例详细讲解死 ...
- mon到底能坏几个
如果是在做ceph的配置,我们会经常遇到这几个问题 问:ceph需要配置几个mon 答:配置一个可以,但是坏了一个就不行了,需要配置只是三个mon,并且需要是奇数个 问:ceph的mon能跟osd放在 ...
- [C/C++]详解结构体
引子 设计程序时,最重要的步骤之一就是选择表示数据的方法.在许多情况下,简单变量甚至是数组还不够.为此,C提供了结构变量(structure variable)提高表示数据的能力,它能够创造新的形式. ...
- ACCESS渗透测试
access-getshell 直接写shell # 创建临时表 create table test(a varchar(255)); # 插入一句话木马 insert into test(a) va ...
- vue的html2canvas将dom转化为图片时踩得坑
一.html2canvas中图片涉及跨域图片 应用场景:做个投票活动,将参赛者的信息转化成图片截图分享.用户上传图片上传到腾讯云cos桶中,html2canvas只能转换本地资源的图片,涉及跨域的图片 ...
- 深度分析:java8的新特性lambda和stream流,看完你学会了吗?
1. lambda表达式 1.1 什么是lambda 以java为例,可以对一个java变量赋一个值,比如int a = 1,而对于一个方法,一块代码也是赋予给一个变量的,对于这块代码,或者说被赋给变 ...
- 使用ABBYY FineReader将文档保存为电子书形式
运用ABBYY FineReader 15的OCR识别技术,不仅能将PDF文档.图像.扫描页面等保存为可编辑的格式,方便用户的进一步编辑使用:而且还能直接转换为电子书的格式,方便用户使用更为便携的电子 ...
- 免费AWS云服务器一键搭建Trojan详细教程
前言 想要撸AWS服务器的可以看我上一篇博客,这里就不介绍了,以下步骤有问题的朋友可以私信或者评论区留言. 配置AWS云服务器 选择语言,博主写了博客后才看到,前面都是使用谷歌翻译. 选择地区 创建虚 ...
- python搭建本地共享文件服务器
1.安装python 去官网下载python最新版,然后安装配置好环境 2.运行命令 在终端上输入以下命令 python3 -m http.server 当你执行完这个命令的时候,你的电脑会监听 80 ...