Python安全开发第四章(文件I/O)

  • A+
所属分类:安全开发
前言


    本节我们学习Python文件操作方面,例如在渗透测试中,批量扫描的小工具,将url批量存入到文本,然后在进行批量取出扫描,这就运用到了文件操作。

(没有补习完的,迅速补习前面的基础内容,下节课"第五章"将正式讲解poc开发了)


1.文件操作流程

    下面我们来看下面这个图,我们要操作文件的话,首先就是要打开文件才能操作文件,之后操作完进行关闭文件。


Python安全开发第四章(文件I/O)


    


2. 操作文件

    file 变量 = open("文件路径","文件权限");

    相信大家看到这里,可能对第二个参数文件权限比较懵,其实就是你用什么权限来操作文件。例如文件里有内容,打开时是将文件内容清空还是追加写入?这就是文件权限的用处!


文件权限图:

    

Python安全开发第四章(文件I/O)


    

file = open("D:\1.txt","a+")#这里打开d盘下的1.txt,以读写追加方式

    现在D盘下1.txt内容如下,是三个url。

Python安全开发第四章(文件I/O)


    打开文件之后,我们进行文件写操作,我们首先通过open打开文件获取到文件句柄给变量file,(文件句柄你可以理解为就是打开的这个文件)。然后通过    文件句柄.write()进行写入内容

file = open("D:\1.txt","a+")file.write( "nwww.baidu.com")#写入内容为www.baidu.com  n为换行

接下来我们打开看一下文件,是否写入了。成功写入!

Python安全开发第四章(文件I/O)


文件读取

    那么如何读文件内容呢,write是写,read就是读。下面我们进行读操作。

file = open("D:\1.txt","a+")str = file.read()print(str)
  

Python安全开发第四章(文件I/O)

     如上图,可能现在你信誓旦旦的想看到文件内容,但是很遗憾。没有看到。
    因为我们用的模式是a+,a+会把文件指针移到文件尾部,意思就是现在你指向了文件最尾部,所以在往下读文件肯定读不到内容了呀。我们可以通过seek进行设置文件指针的起始位置。
文件句柄.seek(0,0) #0,0肯定是文件开头

Python安全开发第四章(文件I/O)

    如上图,当seek从新设置文件指针之后,成功打印出我们的url了。


文件关闭

    在进行操作文件后,进行close关闭掉即可。这样做为了防止数据泄露或丢失。

文件句柄.close()




4.课后小作业(仿写EXP利用脚本)

    课后作业完成作业者,可留言到公众号。

    思路:通过readline()单行读取url,然后在通过strip('n')进行去除掉每一行的换行符,之后在进行拼接内容

    打开文件1.txt,文件内容如下:

www.xxx.comwww.yyy.comwww.zzz.comwww.baidu.com

    获取Url之后,在每个域名后方添加这串内容

/index.php?id=<script>alert(/xss/)</script>

    具体实现如下:

Python安全开发第四章(文件I/O)



                        


 微信搜索关注 "安全族" 长期更新安全资料,扫一扫即可关注安全族!

Python安全开发第四章(文件I/O)



本文始发于微信公众号(安全族):Python安全开发第四章(文件I/O)

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: