OWASP / ZSC

OWASP ZSC - Shellcode/Obfuscate Code Generator https://www.secologist.com/
https://www.secologist.com/
Other
647 stars 217 forks source link

Exit program on pressing ctrl+d at any time #66

Closed CodeMaxx closed 8 years ago

Ali-Razmjoo commented 8 years ago

Hi, by pushing 3times ctrl + d or ctrl + c software will exit, is there any recommendation or problem ?

CodeMaxx commented 8 years ago

I recommend that the program should exit the first time when ctrl + d is pressed just like in other softwares. ctrl + d represents EOF, which implies user doesn't want to send any more input...Making the user do it 3 times makes no sense...also the user has no way to know that after how many times the program will exit.

Also ctrl + c should not be used for exiting the program, rather it should be used for abruptly stopping scripts inbetween. For e.g. currently this happens on pressing ctrl + c

zsc> shellcode
zsc/shellcode> generate
zsc/shellcode/generate> linux_x86
zsc/shellcode/generate/linux_x86> exec
zsc/shellcode/generate/linux_x86/exec> file_to_execute
file_to_execute:Traceback (most recent call last):
  File "/usr/share/owasp_zsc/zsc.py", line 22, in <module>
    main() #execute main function
  File "/usr/share/owasp_zsc/zsc.py", line 18, in main
    run.engine(commands) #run engine
  File "/usr/share/owasp_zsc/core/run.py", line 237, in engine
    getcommand(commands)
  File "/usr/share/owasp_zsc/core/run.py", line 140, in getcommand
    data.append(raw_input('%s:'%o))
KeyboardInterrupt
CodeMaxx:~$

Rather pressing ctrl + c should return return to zsc/shellcode/generate/linux_x86/.

Ali-Razmjoo commented 8 years ago

@CodeMaxx Hi Akash, this issue fixed. thank you.

CodeMaxx commented 8 years ago

Have you kept same functionality for ctrl+c as well? Also why does interrupted by user appear twice before exiting?

zsc/shellcode/generate> windows
zsc/shellcode/generate/windows> [!] interrupted by user!
Exit
[!] interrupted by user!
Exit
Ali-Razmjoo commented 8 years ago

I think ctrl + c get handle by readline module, but ctrl + d fixed now. tell me if there is anything else.