Такая проблема:
делаю (пытаюсь настроить) рассылку в Дебиан через ВДСку при помощи скрипта SET, перезаточенного чьими-то умелыми руками под рассылку.
Скрипт проходится по командам, а далее такая картина:
Что делать?
Почему обрыв?
Картинка не открывается, загрузите её на http://postimage.org/
скрипт SET для рассылки
andrykavol, где скрипт? Телепаты в отпуске.
set-automate
#!/usr/bin/env python
import pexpect
import sys
import os
import time
import subprocess
import re
#
# Simple client mode for SET
#
# try to import pexpect
try: import pexpect
# if pexpect fails
except ImportError:
print "\n[*] PEXPECT is required, please download and install before running this..."
print "[*] Exiting SET-AUTOMATE mode..."
sys.exit()
# try to define filename through argument specified during command line mode
try:
filename=sys.argv[1]
# if we through an exception spit out the command line syntax
except IndexError:
print "\nThe Social-Engineer Toolkit Automate - Automatation for SET"
print "\nSimply create a file that has each option you want from menu mode."
print "For example your file should look something like this:"
print "\n2\n2\n2\nhttps://gmail.com\n2\n2\n443\netc.\n"
print "Usage: ./set-automate <filename>"
sys.exit()
# if the filename doesnt exist throw an error
if not os.path.isfile(filename):
print "\n[*] Sorry hoss, unable to locate that filename, try again.\n"
sys.exit()
password="false"
# if the path is around
if os.path.isfile(filename):
try:
print "[*] Spawning SET in a threaded process..."
child=pexpect.spawn("python set")
#child.delaybeforesend = 0
fileopen=file(filename,"r")
for line in fileopen:
line=line.rstrip()
# if we just use enter send default
if line == "": line="default"
match1=re.search("OMGPASSWORDHERE", line)
if match1:
line=line.replace(" OMGPASSWORDHERE", "")
password="true"
if password == "false":
print "[*] Sending command %s to the interface..." % (line)
if password == "true":
print "[*] Sending command [**********] (password masked) to the interface..."
password="false"
if line == "default":
line=""
if line == "CONTROL-C-HERE":
try:
print "[*] This may take a few seconds while SET catches up..."
child.expect("Next line of the body:")
time.sleep(2)
child.sendline("\n")
child.sendcontrol('c')
# if the user is using pexpect < 2.3
except AttributeError:
print "[-] Error: You are running pexpect < 2.3 which is needed for this function"
choice=raw_input("Would you like to install it now yes or no: ")
if choice == "yes" or choice == "y":
subprocess.Popen("wget http://sourceforge.net/projects/pexpect/files/pexpect/Release%202.3/pexpect-2.3.tar.gz;tar -zxvf pexpect-2.3.tar.gz;cd pexpect-2.3;python setup.py install;cd ..;rm -rf pexpect-2*", shell=True).wait()
try:
reload(pexpect)
child.sendcontrol('c')
except:
print "[*] Relaunch the Social-Engineer Toolkit for changes to apply."
sys.exit()
if line != "CONTROL-C-HERE":
child.sendline(line)
print "[*] Finished sending commands, interacting with the interface.."
child.interact()
# sometimes pexpect can throw errors upon exit this handles them
except OSError:
sys.exit()
# handle keyboardinterrupts (controlc)
except KeyboardInterrupt:
print "[*] Control-C detected, exiting the Social-Engineer Toolkit.."
sys.exit()
# handle everything else
except Exception,e: print "[*] Something went wrong, printing error: %s" % str(e)
SET
#!/usr/bin/python
from src.core import setcore
from src.core.menu import text
import os,subprocess,sys
#########################################
# The Social-Engineer Toolkit (SET) #
# Written by: David Kennedy (ReL1K) #
# Email: davek@secmaniac.com #
#########################################
# this is the main menu structure for SET
# main menu
################################################
# ROOT CHECK
################################################
if os.geteuid() != 0:
print "\n The Social-Engineer Toolkit (SET) - by David Kennedy (ReL1K)"
print "\n Not running as root. \n\nExiting the Social-Engineer Toolkit (SET).\n"
setcore.ExitSet()
setcore.check_pexpect()
setcore.check_beautifulsoup()
define_version = setcore.GetVersion()
setcore.cleanup_routine()
try:
# Remove old Signed_Updates
if os.path.isfile("src/program_junk/Signed_Update.jar"):
subprocess.Popen("rm src/program_junk/Signed_Update.jar", stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
# intitial user menu
if not os.path.isfile("src/agreement"):
print """Copyright 2011, The Social-Engineer Toolkit (SET)
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the distribution.
* Neither the name of Social-Engineer Toolkit nor the names of its contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The above licensing was taken from the BSD licensing and is applied to Social-Engineer Toolkit as well.
Note that the Social-Engineer Toolkit is provided as is, and is a royalty free open-source application.
Feel free to modify, use, change, market, do whatever you want with it as long as you give the appropriate credit where credit
is due (which means giving the authors the credit they deserve for writing it).\n"""
print setcore.bcolors.RED + """
The Social-Engineer Toolkit is designed purely for good and not evil. If you are planning on using this tool for malicious purposes that are
not authorized by the company you are performing assessments for, you are violating the terms of service and license of this toolset. By hitting
yes (only one time), you agree to the terms of service and that you will only use this tool for lawful purposes only."""
choice = raw_input("\nDo you agree to the terms of service [y/n]: ")
if choice == "yes" or choice == "y":
filewrite = file("src/agreement", "w")
filewrite.write("user accepted")
filewrite.close()
print setcore.bcolors.ENDC
else:
print "[!] Exiting the Social-Engineer Toolkit, have a nice day." + setcore.bcolors.ENDC
sys.exit()
while 1:
setcore.show_banner(define_version,'1')
show_main_menu = setcore.CreateMenu(text.main_text, text.main_menu)
# special case of list item 99
print '\n 99) Exit the Social-Engineer Toolkit\n'
# mainc ore menu
main_menu_choice = (raw_input(setcore.setprompt("0", "")))
# quit out
if main_menu_choice == 'exit' or main_menu_choice == "99" or main_menu_choice == "quit":
setcore.ExitSet()
# cleans up stale processes from SET
try:
# kill anything python running on 80
kill_proc("80","python")
# kill anything on 443 ruby which is generally a rogue listener
kill_proc("443", "ruby")
except: pass
subprocess.Popen("killall python 1> /dev/null 2> /dev/null", shell = True).wait()
# load set
if main_menu_choice == '1':
try:
reload(src.core.set)
except:
import src.core.set
# load fasttrack
if main_menu_choice == '2':
try: reload(src.core.fasttrack)
except: import src.core.fasttrack
# third party modules
if main_menu_choice == '3':
try: reload(src.core.module_handler)
except: import src.core.module_handler
# update metasploit
if main_menu_choice == '4':
setcore.update_metasploit()
# update set
if main_menu_choice == '5':
setcore.update_set()
# credits
if main_menu_choice == '6':
setcore.help_menu()
# handle keyboard interrupts
except KeyboardInterrupt:
print "\n\n Thank you for " + setcore.bcolors.RED+"shopping" + setcore.bcolors.ENDC+" at the Social-Engineer Toolkit.\n\n Hack the Gibson...and remember...hugs are worth more than handshakes.\n"
# handle exceptions
#except Exception, error:
# setcore.log(error)
# print "\n\n Something went wrong, printing the error: "+ str(error)
Запуск рассылки командой: cd /set/ && ./set-automate email/sent
Ok, а где ошибки?
Понимаете, я человек - несведущий, еще пока учусь работе в Линуксе.. не знаю куда посмотреть, чтоб ответить на вопрос Ваш.
Вообще после строчки (я про картинку сверху) [ * ] This may take.... должна запуститься сама рассылка.
хм.. кажется Вам не видно картинку..

Ok, а где ошибки?
Можете что-то подсказать?
Уважаемые Умные и Знающие!
Помогите, пожалуйста, хотя бы направьте примерно куда глядеть.
Это вопрос ЖИЗНИ и смерти!!!!!! Нужно срочно разобраться!!!!
Похоже что-то недокачалось.
Абсолютно точно такая же проблема. Может кто-нибудь что-нибудь подсказать?
еще пока учусь работе в Линуксе
The Social-Engineer Toolkit
Не тем вещам. Хацкером с чьей-то помощью не станешь. Хакером -- тем более.