怎么用python扫描主机,python stack viewer怎么用

1,python stack viewer怎么用com.android.htmlviewer com.android.settings com.android.netspeed ...monkeyrunner工具使用Jython(使用Java编程语言的一种Python实现) 。【怎么用python扫描主机,python stack viewer怎么用】
2,Python 实现端口扫描一、常见端口扫描的原理0、秘密扫描秘密扫描是一种不被审计工具所检测的扫描技术 。它通常用于在通过普通的防火墙或路由器的筛?。╢iltering)时隐藏自己 。秘密扫描能躲避IDS、防火墙、包过滤器和日志审计 , 从而获取目标端口的开放或关闭的信息 。由于没有包含TCP 3次握手协议的任何部分 , 所以无法被记录下来,比半连接扫描更为隐蔽 。但是这种扫描的缺点是扫描结果的不可靠性会增加,而且扫描主机也需要自己构造IP包 。现有的秘密扫描有TCP FIN扫描、TCP ACK扫描、NULL扫描、XMAS扫描和SYN/ACK扫描等 。1、Connect()扫描此扫描试图与每一个TCP端口进行“三次握手”通信 。如果能够成功建立接连,则证明端口开发,否则为关闭 。准确度很高,但是最容易被防火墙和IDS检测到,并且在目标主机的日志中会记录大量的连接请求以及错误信息 。TCP connect端口扫描服务端与客户端建立连接成功(目标端口开放)的过程:① Client端发送SYN;② Server端返回SYN/ACK,表明端口开放;③ Client端返回ACK,表明连接已建立;④ Client端主动断开连接 。建立连接成功(目标端口开放)TCP connect端口扫描服务端与客户端未建立连接成功(目标端口关闭)过程:① Client端发送SYN;② Server端返回RST/ACK,表明端口未开放 。优点:实现简单,对操作者的权限没有严格要求(有些类型的端口扫描需要操作者具有root权限),系统中的任何用户都有权力使用这个调用,而且如果想要得到从目标端口返回banners信息 , 也只能采用这一方法 。另一优点是扫描速度快 。如果对每个目标端口以线性的方式,使用单独的connect()调用,可以通过同时打开多个套接字,从而加速扫描 。缺点:是会在目标主机的日志记录中留下痕迹 , 易被发现 , 并且数据包会被过滤掉 。目标主机的logs文件会显示一连串的连接和连接出错的服务信息,并且能很快地使它关闭 。2、SYN扫描扫描器向目标主机的一个端口发送请求连接的SYN包,扫描器在收到SYN/ACK后,不是发送的ACK应答而是发送RST包请求断开连接 。这样 , 三次握手就没有完成,无法建立正常的TCP连接,因此,这次扫描就不会被记录到系统日志中 。这种扫描技术一般不会在目标主机上留下扫描痕迹 。但是,这种扫描需要有root权限 。·端口开放:(1)Client发送SYN;(2)Server端发送SYN/ACK;(3)Client发送RST断开(只需要前两步就可以判断端口开放)·端口关闭:(1)Client发送SYN;(2)Server端回复RST(表示端口关闭)优点:SYN扫描要比TCP Connect()扫描隐蔽一些,SYN仅仅需要发送初始的SYN数据包给目标主机,如果端口开放,则相应SYN-ACK数据包;如果关闭 , 则响应RST数据包;3、NULL扫描反向扫描—-原理是将一个没有设置任何标志位的数据包发送给TCP端口,在正常的通信中至少要设置一个标志位,根据FRC 793的要求 , 在端口关闭的情况下,若收到一个没有设置标志位的数据字段,那么主机应该舍弃这个分段,并发送一个RST数据包,否则不会响应发起扫描的客户端计算机 。也就是说,如果TCP端口处于关闭则响应一个RST数据包,若处于开放则无相应 。但是应该知道理由NULL扫描要求所有的主机都符合RFC 793规定,但是windows系统主机不遵从RFC 793标准,且只要收到没有设置任何标志位的数据包时,不管端口是处于开放还是关闭都响应一个RST数据包 。但是基于Unix(*nix,如Linux)遵从RFC 793标准,所以可以用NULL扫描 。经过上面的分析,我们知道NULL可以辨别某台主机运行的操作系统是什么操作系统 。端口开放:Client发送Null,server没有响应端口关闭:(1)Client发送NUll;(2)Server回复RST说明:Null扫描和前面的TCP Connect()和SYN的判断条件正好相反 。在前两种扫描中 , 有响应数据包的表示端口开放,但在NUll扫描中,收到响应数据包表示端口关闭 。反向扫描比前两种隐蔽性高些,当精确度也相对低一些 。用途:判断是否为Windows系统还是Linux 。4、FIN扫描与NULL有点类似,只是FIN为指示TCP会话结束,在FIN扫描中一个设置了FIN位的数据包被发送后,若响应RST数据包,则表示端口关闭 , 没有响应则表示开放 。此类扫描同样不能准确判断windows系统上端口开发情况 。·端口开放:发送FIN,没有响应·端口关闭:(1)发送FIN;(2)回复RST5、ACK扫描扫描主机向目标主机发送ACK数据包 。根据返回的RST数据包有两种方法可以得到端口的信息 。方法一是: 若返回的RST数据包的TTL值小于或等于64,则端口开放 , 反之端口关闭 。6、Xmas-Tree扫描通过发送带有下列标志位的tcp数据包 。·URG:指示数据时紧急数据,应立即处理 。·PSH:强制将数据压入缓冲区 。·FIN:在结束TCP会话时使用 。正常情况下,三个标志位不能被同时设置,但在此种扫描中可以用来判断哪些端口关闭还是开放,与上面的反向扫描情况相同,依然不能判断windows平台上的端口 。·端口开放:发送URG/PSH/FIN,没有响应·端口关闭:(1)发送URG/PSH/FIN,没有响应;(2)响应RSTXMAS扫描原理和NULL扫描的类似,将TCP数据包中的ACK、FIN、RST、SYN、URG、PSH标志位置1后发送给目标主机 。在目标端口开放的情况下,目标主机将不返回任何信息 。7、Dump扫描也被称为Idle扫描或反向扫描,在扫描主机时应用了第三方僵尸计算机扫描 。由僵尸主机向目标主机发送SYN包 。目标主机端口开发时回应SYN|ACK,关闭时返回RST,僵尸主机对SYN|ACK回应RST,对RST不做回应 。从僵尸主机上进行扫描时,进行的是一个从本地计算机到僵尸主机的、连续的ping操作 。查看僵尸主机返回的Echo响应的ID字段 , 能确定目标主机上哪些端口是开放的还是关闭的 。二、Python 代码实现1、利用Python的Socket包中的connect方法,直接对目标IP和端口进行连接并且尝试返回结果,而无需自己构建SYN包 。2、对IP端口进行多线程扫描,注意的是不同的电脑不同的CPU每次最多创建的线程是不一样的,如果创建过多可能会报错,需要根据自己电脑情况修改每次扫描的个数或者将seelp的时间加长都可以 。看完了吗?感觉动手操作一下把!python学习网,免费的在线学习python平台,欢迎关注!本文转自:https://www.jianshu.com/p/243bb7cfc40f
3,python graphtool 怎么使用>>> from graph_tool.all import *>>> g = Graph()>>> ug = Graph(directed=False)目的:获取zabbix中所有监控的机器主机的ip信息方法1使用zabbixapi接口python程序方法2直接使用数据库进行查询导出(ip包括monitor和notmonitor的机器,还有为删除的一些残留机器ip)这里使用方法二来介绍mysql-uusername-ppassword登入mysqlmysql>...
4,渗透测试之操作系统识别利用TTL起始值判断操作系统,不同类型的操作系统都有默认的TTL值(简陋扫描,仅作参考)TTL起始值:Windows xp(及在此版本之前的windows)128 (广域网中TTL为65-128)Linux/Unix64(广域网中TTL为1-64)某些Unix:255网关:255使用python脚本进行TTL其实质判断使用nmap识别操作系统:nmap -O 192.168.45.129 #参数-O表示扫描操作系统信息,nmap基于签名,指纹,特征,CPE编号等方法去判断目标系统的信息CPE:国际标准化组织,制定了一套标准,将各种设备,操作系统等进行CPE编号,通过编号可以查询到目标系统使用xprobe2进行操作系统识别,专门用来识别目标操作系统:xprobe2 192.168.45.129,但结果并不是很精确被动操作系统识别:不主动向目标主机发数据包,基于网络监听原理通过抓包分析,被动扫描,使用kali中的p0f工具进行网络监听p0f:p0f是一种被动指纹识别工具,可以识别您连接的机器,连接到您的盒子的机器 , 甚至连接在盒子附近的机器,即使该设备位于数据包防火墙后面 。p0f的使用:只要接收到数据包就可以根据数据包判断其信息,首先输入p0f,然后在浏览器里面输入目标系统的网址,便会获得目标系统的信息或者使用p0f结合ARP地址欺骗识别全网OSsnmp扫描:简单网络管理协议,明文传输,使用网络嗅探也可获取到信息SNMP是英文"Simple Network Management Protocol"的缩写,中文意思是"简单网络管理协议" 。SNMP是一种简单网络管理协议,它属于TCP/IP五层协议中的应用层协议 , 用于网络管理的协议 。SNMP主要用于网络设备的管理 。由于SNMP协议简单可靠  , 受到了众多厂商的欢迎,成为了目前最为广泛的网管协议 。snmp的基本思想是为不同种类、不同厂家、不同型号的设备定义一个统一的接口和协议,使管理员可以通过统一的外观面对这些需要管理的网管设备进行管理,提高网管管理的效率,简化网络管理员的工作 。snmp设计在TCP/IP协议族上 , 基于TCP/IP协议工作,对网络中支持snmp协议的设备进行管理 。在具体实现上,SNMP为管理员提供了一个网管平台(NMS),又称为管理站,负责网管命令的发出、数据存储、及数据分析 。被监管的设备上运行一个SNMP代理(Agent)) , 代理实现设备与管理站的SNMP通信 。如下图管理站与代理端通过MIB进行接口统一 , MIB定义了设备中的被管理对象 。管理站和代理都实现了相应的MIB对象,使得双方可以识别对方的数据,实现通信 。管理站向代理申请MIB中定义的数据,代理识别后,将管理设备提供的相关状态或参数等数据转换为MIB定义的格式,应答给管理站,完成一次管理操作 。已有的设备,只要新加一个SNMP模块就可以实现网络支持 。旧的带扩展槽的设备,只要插入SNMP模块插卡即可支持网络管理 。网络上的许多设备,路由器、交换机等,都可以通过添加一个SNMP网管模块而增加网管功能 。服务器可以通过运行一个网管进程实现 。其他服务级的产品也可以通过网管模块实现网络管理 , 如Oracle、WebLogic都有SNMP进程,运行后就可以通过管理站对这些系统级服务进行管理 。使用UDP161端口(服务端),162端口(客户端),可以监控网络交换机,防火墙,服务器等设备可以查看到很多的信息,但经常会被错误配置,snmp里面有一些默认的Community,分别是Public/private/manager如果目标的community是public,那么就可以发送SNMP的查询指令,对IP地址进行查询在kali中存在对snmp扫描的工具,为onesixtyone在Windows XP系统安装SNMP协议:1,在运行框输入appwiz.cpl2,找到管理和监控工具,双击3,两个都勾选,然后点OK使用onesixtyone对目标系统进行查询:命令为:onesixtyone 192.168.45.132publiconesixtyone -c字典文件-I主机-o 倒入到的文件 -w 100onesixtyone默认的字典在:/usr/share/doc/onesixtyone/dict.txt使用snmpwalk查找目标系统的SNMP信息:snmpwalk 192.168.45.129 -c public -b 2csnmpcheck -t192.168.45.129snmpcheck -t192.168.45.129 -w参数-w检测是不是有可写权限SMB协议扫描:server message block,微软历史上出现安全问题最多的协议,在Windows系统上默认开发,实现文件共享在Windows系统下管理员的Sid=500,SMB扫描:nmap -v -p 139,445 192.168.45.132 --open 参数-v表示显示详细信息,参数--open表示显示打开的端口nmap 192.168.45.132 -p 139,445 --script=smb-os-discovery.nsesmb-os-discovery.nse:这个脚本会基于SMB协议去判别操作系统,主机名,域名,工作组和当前的时间nmap -v -P 139,445 --script=smb-check-vulns--script-args=unsafe=1 192.168.45.132脚本smb-check-vulns:检查已知的SMB重大的漏洞后面给脚本定义参数 --script-args=unsafe=1,unsafe可能会对系统有伤害,导致宕机,但要比safe准确nbtscan -r 192.168.45.0/24参数-r使用本地137端口进行扫描,兼容性较好,可以扫描一些老版本的Windowsnbtscan可以扫描同一局域网不同的网段,对于局域网扫描大有裨益enum4linux -a 192.168.45.132 :SMTP扫描:目的在于发现目标系统的邮件账号使用nc -nv 192.168.45.132 25VRFY root :确定是不是有root用户nmap扫描SMTP服务:nmap smtp.163.com -p25 --script=smtp-enum-users.nse --script-args=smtp-enum-users.methods=脚本smtp-enum-users.nse用于发现远程系统上所有user的账户nmap smtp.163.com -p25 --script=smtp-open-relay.nse,如果邮件服务器打开了open-relay功能,那么黑客可以拿管理员的邮箱去发送钓鱼邮件防火墙识别:通过检查回包,可能识别端口是否经过防火墙过滤设备多种多样,结果存在一定的误差第一种情况:攻击机向防火墙发送SYN数据包,防火墙没有给攻击机回复,攻击机再发送ACK数据包,若防火墙返回RST数据包,那么证明该端口被防火墙过滤第二种类似第三种:攻击机向防火墙发送SYN数据包,防火墙返回SYN+ACK或者SYN+RST数据包,攻击者再发送ACK数据包,若防火墙返回RST数据包,那么就可以证明防火墙对于该端口没被过滤.unfiltered=open第四种情况类似,证明该端口是关闭的,或者防火墙不允许其他用户访问该端口使用python脚本去判定:使用nmap去进行防火墙识别:nmap有系列防火墙过滤检测功能nmap -sA 192.168.45.129 -p 22 参数-sA表示向目标主机发送ACK数据包,参数-sS表示向目标发送SYN数据包,通过抓包分析收到的数据包判断是否有防火墙检测功能负载均衡识别:负载均衡可以跟为广域网负载均衡和服务器负载均衡在kali中使用lbd命令用于识别负载均衡机制格式:lbd +域名/IP地址,如lbd www.baidu.comWAF识别:WEB应用防火墙,在kali中最常用的waf检测扫描器输入:wafw00f -l:可以检测出这个工具可以检测到的waf类别探测微软公司的WAF:wafw00fhttp://www.microsoft.com使用nmap中的脚本去扫描目标网站使用的waf信息:nmapwww.microsoft.com--script=http-waf-detect.nse脚本详情:nmap补充:参数:-iL:把IP地址做成文件,使用该参数扫描这个文件里面的IP! nmap -iL ip.txt-iR:随机选取目标进行扫描,后面跟需要扫描的主机个数,例:nmap -iR20-p 22:随机扫描20个主机的22号端口,默认发送SYN数据包参数-sn表示不做端口扫描参数-Pn表示跳过主机发现,扫描所有在线的主机,扫防火墙帮助很大参数p0表示进行IP协议ping参数-n/-R表示不进行DNS解析参数--dns-servers表示指定一个DNS服务器去解析参数--traceroute表示进行路由追踪参数-sM表示发送ACK+FIN参数-sF发送FIN数据包参数-sV根据特征库匹配开放的服务,加上参数--version-intensity 后面加等级,0最小,9最完善参数--script=脚本名参数--script=arge.脚本.脚本名参数--script-updatedb更新脚本参数--script-help=脚本名查看脚本的信息参数-O检测操作系统类型参数--scan-delay 表示每次探测间隔多长时间,后面个时间,如nmap 192.168.45.132 --scan-delay 10s :间隔十秒参数-f表示设置MTU最大传输单元参数-D表示伪造源地址,增加一些虚假的扫描IP,例:nmap-D 192.138.1.1,192.151.141.4172.16.45.1:扫描172.16.45.1主机,用这两个地址做干扰,防止被发现参数-S表示伪造源地址,但要获取得到的IP地址,那么就得登陆到伪造的IP上参数--proxies指定代理服务器参数--spoof-mac欺骗mac地址 nmap 10.1.1.1--spoof-mac=00:11:22:33:44:55参数-6表示扫描IPv65,如何用 python 读取硬件信息在LINUX下,*NIX 嘛. 硬件信息都在 info 文件里, 直接读取文本文件就行了.:f = open("/proc")print(f.readlines())f.close()在windows下, win32 扩展调用WINDOWS的API应该可以做到.:import os, csvfp = os.popen("wmic cpu list /format:csv")for i in csv.reader(fp):print ipython是脚本语言,不能读取硬件信息,你可以用编译语言开发一个python的脚本模块,然后用脚本调用import wmic = wmi.WMI()for item in c.Win32_PhysicalMedia(): print item脚本语言打包的exe , 本质上还是解释执行的 。把壳脱了,用ResHacker打开,就能看到源码 。答题不易,互相帮助,手机提问的朋友在客户端右上角评价点满意即可.如果你认可我的回答 , 请点击采纳为满意回答按钮!6,python如何读计算机的硬件信息啊你在python里直接读取/proc里的文件, 或者调用 lshw, lspci, lsusb之类的命令不就可以了?找到了import win32com.clientstrComputer = "."objWMIService = win32com.client.Dispatch("WbemScripting.SWbemLocator")objSWbemServices = objWMIService.ConnectServer(strComputer,"root\cimv2")colItems = objSWbemServices.ExecQuery("Select * from Win32_Processor")ProcessorId=colItems[0].ProcessorIdprint ProcessorId提供一个思路给你:window有一些读硬件信息的脚本,你可以用python去调用这些脚本 。;)啥都用c++解决,那python干啥用呢?莫非要学pyhton先精通C++?ython只是脚本而已,系统信息这种东西,肯定要由系统接口来提供,通常都是c/c++啦,学python做这个好像没啥大用7,谁能告诉我HScan 怎么用啊HScan v1.20工具 使用说明:1.系统要求: Windows NT/2000/XP2.软件简介:多线程方式对指定IP段(指定主机),或主机列表进行检测.GUI和命令行两种方式.扫描项目: -name --- 获取主机名;-port --- 默认端口扫描;-ftp --- FTP Banner,匿名用户,弱口令账号扫描; -ssh --- SSH Banner扫描;-telnet --- TELNET Banner,弱口令账号扫描;-smtp --- SMTP Banner,匿名用户,弱口令账号扫描; -finger --- FINGER漏洞(SunOS/Solaris 用户列表扫描);-iis --- IIS漏洞扫描;-cgi --- Unix/NT cgi漏洞扫描;-pop --- POP3 Banner,弱口令账号扫描;-rpc --- RPC漏洞扫描;-ipc --- Windows NT/2000用户列表获取,弱口令账号扫描;-imap --- IMAP Banner,弱口令账号扫描;-mssql --- MSSQL弱口令账号扫描;-mysql --- MYSQL Version,弱口令账号扫描;-cisco --- CISCO弱口令扫描;-plugin --- PLUGIN扫描;-all --- 检测以上所有项目;其它选项:-max 指定最大线程数目,并发主机数目,默认为120,40; -time 指定TCP连接超时毫秒数,默认为10000; -sleep 指定ftp/pop/imap/telnet探测的线程开启间隔,默认为200毫秒; -ping 扫描主机前ping主机hscan120软件免费下载(附hscan120扫描器使用教程)hscan v1.20工具 使用说明:1.系统要求: windows nt/2000/xp2.软件简介:多线程方式对指定ip段(指定主机),或主机列表进行检测.gui和命令行两种方式.扫描项目:-name --- 获取主机名;-port --- 默认端口扫描;-ftp --- ftp banner,匿名用户,弱口令账号扫描;-ssh --- ssh banner扫描;-telnet --- telnet banner,弱口令账号扫描;-smtp --- smtp banner,匿名用户,弱口令账号扫描;-finger --- finger漏洞(sunos/solaris 用户列表扫描);-iis --- iis漏洞扫描;-cgi --- unix/nt cgi漏洞扫描;-pop --- pop3 banner,弱口令账号扫描;-rpc --- rpc漏洞扫描;-ipc --- windows nt/2000用户列表获取,弱口令账号扫描;-imap --- imap banner,弱口令账号扫描;-mssql --- mssql弱口令账号扫描;-mysql --- mysql version,弱口令账号扫描;-cisco --- cisco弱口令扫描;-plugin --- plugin扫描;-all --- 检测以上所有项目;其它选项:-max指定最大线程数目,并发主机数目,默认为120,40;-time指定tcp连接超时毫秒数,默认为10000;-sleep指定ftp/pop/imap/telnet探测的线程开启间隔,默认为200毫秒;-ping 扫描主机前ping主机生成报告:-report 用于生成扫描报告;按f8键中断扫描.描述∶超级扫描工具下载地址: http://soft.98959.com/200603/2006-03-23/5670.html

    推荐阅读