python代码即脚本,脚本小子即是python。python只有几个类:常量、字符串,API不可知的数,变量定义。常量是不变固定的,变量是可变的,字符串一般都是单引号''和双引号""和字符连起来的,api是一种软件组件,软件启动器什么的,不可知的数是因为python语言是开源的,第三方库有很多函数未知的,主要看你的定义。

在2017—2019年IEEE发布的编程语言排行,榜上,Python连续3年位居榜首。Python语言其实已经不年轻了,1989年它诞生于阿姆斯特丹。python的本意是大蟒蛇。不过前些年国内的用户并不多,使用者大都是外国人。这个原因也与编程语言的分类有些关系,在很长一段时间里,国内很多人都推崇编译型编程语言,而不重视解释型编程语言,而Python恰好是一门解释型编程语言。

安装教程:

win:python.org手动安装

linux:sudo apt install puthon

高级函数:

print("hello world!")¥print函数是打印函数,什么是打印函数?打印函数就是输出函数,输出函数是什么?输出函数就是输出内容,后面有什么,就输出什么内容,函数是什么?函数就是一套公式重要的部分,一般脚本小子只记它,括号里面称为字符串,就是"hello world!"。现在你学完了python的高级函数,可以自己写项目了,也可以把你本不多的钱投资给我。

高高级函数:

python编程语言都有三大结构:顺序结构、选择结构和循环结构

if函数就是条件函数判断条件为真为假,if函数配合print函数天下无敌

I am hack = 1 /没有什么精妙,I am hack字符等于1,I am hack就是1,1就是I am hack

if I am hack == 48902892889: /右边的数比左边的数大,=>是大于或等于

print ("我是黑客") /条件不成立,直接出错

while循环函数

i = 1 /i等于1,1等于i

while i>2: /设置条件,i小于2,造成死循环

print ('hello python') /无限打印hello python,直到电脑死机

函数与模块

import语句

如果希望引入某个模块,可以使用import加上模块的名字,例如要引入Socket模块,就可以使用:

import函数

如果希望引入某个模块,可以使用import加上模块的名字,例如要引入Socket模块,就可以使用:

import socket

如果要同时引入多个模块,可以使用逗号分开:

import socket,random

这样引用之后,在调用模块中的函数时,必须使用“模块名.函数名”方式来引用。

open()函数

要对一个文件进行处理,首先需要打开这个文件。就要使用open()函数打开一个文件,创建一个file对象,然后才可以使用其他方法对这个文件进行读写操作。open()函数的完整语法格式如下:

 file object = open(file, access_mode='r')

file object = open(file, access_mode='r') /其中,object就是一个file对象,file是要打开目标文件的路径加名称,access_mode是打开文件之后的模式,默认情况下是只读模式r,也就是不能改写该文件。常见的模式包括r(读模式)、w(写模式)、a(追加模式)、b(二进制模式)、+(读/写模式),而这些模式还可以组合使用。例如,wb表示以二进制格式打开一个文件只用于写入,如果该文件已存在则将其覆盖,如果该文件不存在则创建新文件;w+表示打开一个文件用于读写,如果该文件已存在则将其覆盖,如果该文件不存在则创建新文件;wb+表示以二进制格式打开一个文件用于读写,如果该文件已存在则将其覆盖,如果该文件不存在则创建新文件。

下面代码打开一个名为test.txt的文件,并对其进行读写操作。

 target = open("test.txt", "w+")

write()函数

打开一个文件之后,还可以使用write()函数将任何字符串写入一个打开的文件。write()函数的格式如下:

 target.write(string);

例如,将“Hello Python”写入test.txt中,就可以使用如下代码:

 target.write( " Hello Python \n");

close()函数

File对象的close()函数刷新缓冲区里任何还没写入的信息,并关闭该文件,这之后便不能再写入。例如,关闭前面打开的文件,就可以执行:

 target.close();

Socket模块的主要目的是在网络上的两个程序之间建立信息通道。Python中提供了两个基本的Socket模块:服务器端Socket和客户端Socket。当创建一个服务器端Socket之后,这个Socket会在本机的一个端口上等待连接,客户端Socket访问这个端口后,两者完成连接就可以进行交互。

首先使用Socket编写一个服务器端程序,这里会用到之前介绍过的函数。Socket开始监听后,就会使用accept()函数等待客户端连接。这个过程通过一个条件永远为真的循环来实现,服务器端在处理完和客户端的连接后,会再次调用这个函数开始等待下一个连接。具体代码如下:

 import socket
s1 = socket.socket()
s1.bind(("127.0.0.1",2345))
s1.listen(5)
str="Hello world"
while 1:
conn,address = s1.accept()
print ("a new connect from",address)
conn.send(str.encode())
conn.close()

接下来再使用Socket编写一个客户端程序,这个程序最重要的功能是通过connect()函数连接到目标服务器端。

 import socket
s2 =socket.socket()
s2.connect(("127.0.0.1",2345))
#对传输数据使用encode()函数处理,Python 3不再支持str类型传输,需要转换为bytes类型
data=bytes.decode(s2.recv(1024))
s2.close()
print (data)

python-nmap模块

Nmap已经具备如下功能:

□ 主机发现。向目标计算机发送信息,然后根据目标的反应来确定它是否处于开机并联网的状态。

□ 端口扫描。向目标计算机的指定端口发送信息,然后根据目标端口的反应来判断它是否开放。

□ 服务类型及版本检测。向目标计算机的目标端口发送特制的信息,然后根据目标的反应来检测它运行服务的服务类型和版本。

□ 操作系统检测。除了这些基本功能之外,Nmap还实现了一些高级的审计技术,例如伪造发起扫描端的身份,进行隐蔽扫描,规避目标的防御设备(例如防火墙),对系统进行安全漏洞检测,并提供完善的报告选项。随着Nmap强大的脚本引擎NSE的推出,任何人都可以自己向Nmap中添加新的功能模块。

由于Nmap提供了如此强大且全面的功能,所以如果能在自己编写的Python程序中使用这些功能将会事半功倍。有了Nmap,就像是“站在巨人的肩膀上”编程。

python渗透脚本小子速成教程的更多相关文章

  1. Python大法之告别脚本小子系列—信息资产收集类脚本编写(下)

    作者:阿甫哥哥 原文来自:https://bbs.ichunqiu.com/article-1618-1.html 系列文章专辑:Python大法之告别脚本小子系列目录: 0×05 高精度字典生成脚本 ...

  2. arcgis python脚本工具实例教程—栅格范围提取至多边形要素类

    arcgis python脚本工具实例教程-栅格范围提取至多边形要素类 商务合作,科技咨询,版权转让:向日葵,135-4855_4328,xiexiaokui#qq.com 功能:提取栅格数据的范围, ...

  3. Mysql DBA 20天速成教程,DBA大纲

    Mysql DBA 20天速成教程 基本知识1.mysql的编译安装2.mysql 第3方存储引擎安装配置方法3.mysql 主流存储引擎(MyISAM/innodb/MEMORY)的特点4.字符串编 ...

  4. 使用 Python 编写脚本并发布

    使用 Python 编写脚本并发布 P1: 脚本 通常在 Linux 服务器上会遇到在命令行中输入命令的操作,而有些操作包含的命令数目较多或者其中的命令包含的参数较多,如果一个一个的敲命令的话就太麻烦 ...

  5. 渗透脚本快速生成工具Intersect

    渗透脚本快速生成工具Intersect   当渗透人员获取目标系统的执行权限,往往需要编写相应的脚本,实现更多的渗透操作.Kali Linux提供一款Python脚本快速生成工具Intersect.该 ...

  6. PySide——Python图形化界面入门教程(四)

    PySide——Python图形化界面入门教程(四) ——创建自己的信号槽 ——Creating Your Own Signals and Slots 翻译自:http://pythoncentral ...

  7. 8 个 Python 实用脚本,【速】收藏备用!

    脚本写的好,下班下得早!程序员的日常工作除了编写程序代码,还不可避免地需要处理相关的测试和验证工作. 例如,访问某个网站一直不通,需要确定此地址是否可访问,服务器返回什么,进而确定问题在于什么.完成这 ...

  8. 脚本小子学习--vulnhub靶机DC8

    @ 目录 前言 一.环境搭建 二.目标和思路 三.实际操作 1.信息收集 2.getshell 总结 前言 通过一些靶机实战练习,学习使用现有的工具来成为脚本小子. 一.环境搭建 靶机:Linux虚拟 ...

  9. Python实用工具包Scrapy安装教程

       对于想用每个想用Python开发网络爬虫的开发者来说,Scrapy无疑是一个极好的开源工具.今天安装之后觉得Scrapy的安装确实不易啊.所以在此博文一篇,往后来着少走弯路. 废话不多说了,如果 ...

  10. Unity3D脚本中文系列教程(十六)

    Unity3D脚本中文系列教程(十五) ◆ function OnPostprocessAudio (clip:AudioClip):void 描述:◆  function OnPostprocess ...

随机推荐

  1. Winform解决跨线程更新UI的问题

    最近又拿起了Winform的程序,由于要起socket server,所以需要起线程,这里就遇到了经典的跨线程UI调用的问题. 如果什么都不写,直接由线程更新UI,会报错:线程间操作无效. 这里的解决 ...

  2. canvas(一)描边与填充

    1.画布大小 canvas默认的大小是 300*150,通过操作width/height属性可以设置画布的大小,属性值只能是具体是像素值,而不能是百分比. <body> <div c ...

  3. Python版本与Jupyter记录

    最近使用Python的时候,遇到一个版本问题.我本地安装的Python版本是3.8.0,在使用match...case...语法时,提示如下报错: 查询之后,才知晓3.8.0还没有match语法,ma ...

  4. 远程连接利器:玩转MobaXterm

    今天这篇文章轻松不烧脑,主要是想和大家分享一下我在工作中常用的远程管理工具--MobaXterm.这款工具不仅功能强大,而且在日常的远程操作中极为高效,特别适合用来管理远程服务器.MobaXterm结 ...

  5. AO SDK安装问题

    ao sdk for .net安装时,需要进行验证.net框架,没装vs的时候会提示 arcobjects SDK for the Microsoft.NT Framework requires a ...

  6. 一比一还原axios源码(七)—— 取消功能

    按照惯例,我们先来看下官方的例子: 你可以通过axios的CancelToken工厂函数,生成一个source,然后把这个对象作为参数传递给axios,最后,需要取消的时候调用source的cance ...

  7. 给我2分钟,保证教会你在Vue3中实现一个定高的虚拟列表

    前言 虚拟列表对于大部分一线开发同学来说是一点都不陌生的东西了,有的同学是直接使用第三方组件.但是面试时如果你简历上面写了虚拟列表,却给面试官说是通过三方组件实现的,此时空气可能都凝固了.所以这篇文章 ...

  8. Delon ACL

    Delon ACL delon ACL Alain acl 路由守卫 使用 ACLService 核心是 ACLService,See:https://github.com/ng-alain/delo ...

  9. 使用Apache commons-pool2实现高效的FTPClient连接池的方法

    一. 连接池概述​ 频繁的建立和关闭连接,会极大的降低系统的性能,而连接池会在初始化的时候会创建一定数量的连接,每次访问只需从连接池里获取连接,使用完毕后再放回连接池,并不是直接关闭连接,这样可以保证 ...

  10. 永久告别mac屏幕涂层脱落

    转载:https://www.feng.com/post/11380203 我从2011年开始使用Mac book pro电脑,到现在的2016款已经是第三台了,我从来都不会被涂层脱落这个问题困扰,我 ...