python分割补全ip小脚本(用于goby)

python分割补全ip小脚本(用于goby)

0x00 前言

​ 在渗透测试中,时常遇到给的资产像123.123.123.12-46,123.211.111.2,123.123.111.4-7,111.111.111.111,诸如此类用逗号分开,然后ip范围是在后面像12-46这样指定的资产,goby不能识别这样的ip,只认123.123.123.12-123.123.123.46,这样的,每次都得整理ip然后放进去扫描,整得烦了于是手写了这个小工具代码。

0x01 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58

def chai(sip):
lensip = len(sip)
qian = ""
daigang = ""
hou = ""
flag2 =0
#print sip
flag=0
for i in range(0,lensip):

if flag !=3 :
qian += sip[i]
if sip[i] == '.':
flag+=1
if flag2 ==1:
hou += sip[i]
if sip[i] == '-':
flag2 = 1
if sip[i] !='-' and flag2 !=1:
#print flag2
daigang += sip[i]

daigang += '-'
#print daigang
#print qian
#print hou
print (daigang+qian+hou)

if __name__=="__main__":
strip = input('输入ip:')
lenip = len(strip)
#print lenip
listip = []
temp1 = ""
flaggang=0
for i in range(0,lenip):
#print i
if strip[i]!=',':

temp1 += strip[i]
if strip[i] == '-':
flaggang = 1
if strip[i] == ',':
if flaggang != 1:
print (temp1)
if flaggang == 1:
chai(temp1)
temp1 = ""
flaggang = 0
#print temp1
if i == lenip-1:
if flaggang != 1:
print (temp1)
if flaggang == 1:
chai(temp1)
temp1 = ""
flaggang = 0

​ 主要实现ip分割,然后换行输出(虽然goby能识别","号)把123.123.123.12-46这样的ip取出来,输出为123.123.123.12-123.123.123.46这样的形式,写的拉个人使用罢了,效果如下:

image-20210925223024444

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!,本博客仅用于交流学习,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。 文章作者拥有对此站文章的修改和解释权。如欲转载此站文章,需取得作者同意,且必须保证此文章的完整性,包括版权声明等全部内容。未经文章作者允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。若造成严重后果,本人将依法追究法律责任。 阅读本站文章则默认遵守此规则。