๊ฒ์์ด ์ค์ฌ์ผ๋ก CVE ๊ฒ์ํด ๋์ ๊ฑธ ํ์ฅ๋์ด ๋๋ถ๋ฅ Vendor, ์๋ถ๋ฅ Product๋ก ๋ค์ ์ ๋ฆฌํด๋ฌ๋ผ๊ณ ํ์ จ๋ค. ์ด๊ฑธ ํ๋ ค๊ณ ๋ณด๋๊น ์ญ์ ์์ด ๋ฐฉ๋ํด์ CVE ์กฐ์ฌํ ๋ ํฌ๋กค๋ง ํ๋ก๊ทธ๋จ ๋ง๋ ๊ฒ ์ฒ๋ผ ์์ ์๋ํ ํ๋ก๊ทธ๋จ์ผ๋ก ์ด๊ฑธ ์ํํ๋ฉด ์ด๋จ๊น ์ถ์ด์ ํ์ฌ ์์ ์ด๋ฐ์ ๊ณต๋ถํ๋ openpyxl ๋ชจ๋์ ์ฌ์ฉํ์ฌ ์ฝ๋ฉ์ ํด๋ดค๋ค.
์ผ๋จ ๋ด๊ฐ ์๊ฐํ ๊ฑด Vendor๋ณ๋ก ๋ถ๋ฅ๋ฅผ ํ๋๊ฑฐ๋๊น ๊ฐ์ Vendor๋ฅผ ๊ฐ๊ณ ์๋ ๋ชจ๋ CVE๋ฅผ ๋ค ๊ฐ์ ธ์์ผ ํ๋ฏ๋ก key๋ณ์์ ์ฐพ๊ณ ์ํ๋ Vendor๋ช ์ ์ ๋ ฅํ๊ณ ์ด๊ฒ๊ณผ ๊ฐ์ผ๋ฉด ๋ฉ๋ชจ์ฅ์ ํด๋น CVE์ ID๋ฅผ writeํ์ฌ ์ ์ฅํ๋ ์์ผ๋ก ์ฝ๋ฉ์ ํด์ผ๊ฒ ๋ค๊ณ ์๊ฐํ๋ค.
๋จผ์ ๋ด๊ฐ ์ง ์ ์ฒด ์ฝ๋๋ค.
import openpyxl
from openpyxl import Workbook, load_workbook
import sys
key = 'd-link'
vendor = ''
product = ''
cve = ''
cnt = 0
filename = input('Enter Output File Name (Default : search.txt) : ') or 'search.txt'
wb = Workbook()
if not filename.endswith('.txt'):
filename += '.txt'
try :
f = open(filename, 'wt')
for i in range(54, 4031):
wb = load_workbook('sheet.xlsx')
sheet = wb.active
vendor = sheet.cell(i, 7).value
cve = sheet.cell(i, 5).value
if vendor != key:
continue
else:
cnt += 1
if cve == None:
f.write('\n')
cve = 'none'
else:
f.write(cve + '\n')
print(cnt, ': ', cve)
print('---------- END ----------')
print('total: ', cnt)
f.close
except KeyboardInterrupt:
print('End the process, the program has exited...')
sys.exit()
์ด๋ ๊ฒ ํด์ ์ ๋์๊ฐ๊ธด ํ๋๋ฐ ์๋๊ฐ ๋์ดใ ์ด์ดใ ๋ฌด ๋๋ ธ๋ค. ๊ทผ๋ฐ ์ง์ง ์ด๊ฑธ ๊ทธ๋ฅ ์ฉ์ผ๋ก ๋ด๊ฐ ๋ถ๋ฅํด์ ์ ๋ฆฌํ๋ฉด ๋ฐฑํผ ์ฉ๋ ธ๊ฐ๋ค์ธ๋ฐ๋ค๊ฐ ๋นํจ์จ์ ์ด๊ณ ์๊ฐ๋ ์์ฒญ ์ค๋๊ฑธ๋ฆด๊ฒ ๋ปํ๋ค.
์ต๋ํ ํจ์จ์ ์ผ๋ก ํ๊ณ ์ถ์ด์ ๋จธ๋ฆฌ๋ฅผ ๊ตด๋ ธ๋๋ฐ, ์๋ฌด๋ฆฌ ์์ ์๋ํ ๋ชจ๋์ ์ฌ์ฉํ๋ค๊ณ ํด๋ ์ด๋ ๊ฒ ๊ฒ์์ ํ๋ ํ๋ก๊ทธ๋จ์ ๊ฒ์ํ๋๋ฐ ์๊ฐ์ด ๊ฑธ๋ฆด ์ ๋ฐ์ ์๊ธฐ ๋๋ฌธ์ ์๋ ๋ฉด์์๋ ๋ฉ๋ฆฌํธ๊ฐ ์์๋ค. ๊ณ์ ๊ฐ์ ์์น์ ๋ฌด์ธ๊ฐ๋ฅผ ๋ณต์ฌ ๋ถ์ฌ๋ฃ๊ธฐ๋ฅผ ํ๋ค๊ฑฐ๋ ํ๋ ๋ฐ๋ณต์ ์ธ '๋ฌธ์์์ '์ ์๋ํ๋ก ํด์ฃผ๋๋ฐ์๋ ์ฅ์ ์ด ๋ ์ ์๊ฒ ์ง๋ง, ์ด๋ ๊ฒ ์ด๋ฏธ ์กด์ฌํ๋ ํ์ผ์ ์๋ data๋ค ์์์ ์ํ๋ ์ ๋ณด๋ฅผ ์ฐพ๋ ๊ฒ์ ํ๋ก๊ทธ๋จ์ผ๋ก ํ๊ธฐ์๋ ๋ฌด๋ฆฌ์ผ ๊ฒ ๊ฐ์๋ค..
์ํผ ๊ทธ๋์ ๋ด๊ฐ ์ฐพ์๋ธ๊ฑด ๋ฐ๋ก '์ฌ๋ผ์ด์'์ด๋ค!
์ด๋ ๊ฒ ์ฌ๋ผ์ด์๊ฐ ์์์ ์ด sheet์ ์๋ ๋ชจ๋ Vendorํ์ ๋ชฉ๋ก๋ค์ ๋ณด์ฌ์ค๋ค. ๊ทธ๋ผ ๋ ๋ด๊ฐ ์ฐพ๊ณ ์ ํ๋ Vendor์ ์ฒดํฌ๋ฅผ ํ๊ณ , ์ฌ๋ผ์ด์ ํ๋๋ฅผ ๋ ์์ฑํด์
์ด๋ ๊ฒ Apple Vendor์ ํด๋นํ๋ Product๋ ์ ํํ๋ฉด ๋ถ๋ฅ๋ฅผ ์ ํ ์ ์์๋ค.
์ด๋ป๊ฒ ๋ณด๋ฉด ์ด๋ ๊ฒ ํ๋ ๊ฒ๋ ๋ ธ๊ฐ๋ค๋ฅผ ์์ ํ ์ํด๋ ๋๊ฒ ๋ง๋ค์ด์ฃผ์ง ์์์ง๋ง ๊ทธ๋๋ ํจ์ฌ ํธํ๊ณ ๋น ๋ฅด๊ฒ ์์ ์ ํ ์ ์์๋ค.
'โ๏ธ 21-2 IPP > study & work' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์์์ปดํจํฐ, PQC (์ฐจ์ธ๋ ์์์ํธ) (0) | 2021.12.16 |
---|---|
ARP Spoofing ์ค์ต - 2 (0) | 2021.10.08 |
ARP Spoofing ์ค์ต - 1 (0) | 2021.09.30 |
CVE ํฌ๋กค๋ง ํ๋ก๊ทธ๋จ ์์ (0) | 2021.09.23 |
python ์ฐ์ต - 4 (0) | 2021.09.23 |
๋๊ธ