Skip to content

Commit 4d024c4

Browse files
committed
Changes to sec_analysis to add part where keyfiles and pem files are searched.
1 parent 9154fbe commit 4d024c4

2 files changed

Lines changed: 19 additions & 7 deletions

File tree

analysis/sec_analysis.py

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@
88
mypath = os.getcwd()
99

1010
filelist = []
11-
opbufferinit = 'Running security analysis:\n'
11+
keyfilelist = []
12+
opbufferinit = '\nRunning security analysis:'
1213
opbuffer = ''
1314
for (dirpath, dirnames, filenames) in walk(mypath):
1415
for filename in fnmatch.filter(filenames, '*.c'):
@@ -19,6 +20,10 @@
1920
filelist.append(os.path.join(dirpath,filename))
2021
for filename in fnmatch.filter(filenames, '*.json'):
2122
filelist.append(os.path.join(dirpath,filename))
23+
for filename in fnmatch.filter(filenames, '*.key'):
24+
keyfilelist.append(os.path.join(dirpath,filename))
25+
for filename in fnmatch.filter(filenames, '*.pem'):
26+
keyfilelist.append(os.path.join(dirpath,filename))
2227

2328
doregex = re.compile('([A-Z0-9]{64})[\s\'\"\;\)\]\}]*$')
2429
awsregex = re.compile('([A-Z]*[0-9][A-Z0-9]+)[\s\'\"\;\)\]\}]*$')
@@ -30,22 +35,28 @@
3035
linenum+=1
3136
eachline = eachline.lstrip().rstrip()
3237
if len(doregex.findall(eachline)):
33-
opbuffer+='\n' + 'Filename: {}\nLine number: {}\n'.format(filename, linenum)
38+
opbuffer+='\n\n' + 'Filename: {}\nLine number: {}'.format(filename, linenum)
3439
break
3540
elif len(awsregex.findall(eachline)):
3641
flag = False
3742
for eachtoken in awsregex.findall(eachline):
3843
if len(eachtoken) == 40:
39-
opbuffer+='\n' + 'Filename: {}\nLine number: {}\n'.format(filename, linenum)
44+
opbuffer+='\n\n' + 'Filename: {}\nLine number: {}'.format(filename, linenum)
4045
flag = True
4146
break
4247
if flag:
4348
break
49+
if len(keyfilelist):
50+
opbuffer+="\n\nFound files with security keys."
51+
for eachfile in keyfilelist:
52+
opbuffer+='\n' + 'Filename: {}'.format(eachfile)
53+
opbuffer+="\n\nPlease remove these files before pushing changes."
54+
4455
with open(os.path.join(os.path.dirname(os.path.abspath(sys.argv[0])),'secanalysis.result'),'w') as opfile:
4556
opfile.write(opbufferinit)
46-
if len(opbuffer):
47-
opbuffer+='\nSTATUS: FAILURE'
57+
if len(opbuffer) or len(keyfilelist):
58+
opbuffer+='\n\nSTATUS: FAILURE'
4859
else:
49-
opbuffer+='\nSTATUS: SUCCESS'
60+
opbuffer+='\n\nSTATUS: SUCCESS'
5061
opfile.write(opbuffer)
51-
print opbufferinit + opbuffer + '\n'
62+
print opbufferinit + opbuffer + '\n'

analysis/secanalysis.result

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
12
Running security analysis:
23

34
STATUS: SUCCESS

0 commit comments

Comments
 (0)