Skip to content

Commit

Permalink
scrcpy on dark web
Browse files Browse the repository at this point in the history
  • Loading branch information
imvickykumar999 committed Nov 15, 2023
1 parent 2cd4a6d commit ec747da
Show file tree
Hide file tree
Showing 20 changed files with 595 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@

Dark Web/HiddenServiceDir/hs_ed25519_secret_key
Binary file added ADB GUI/Executable/ScrCpy_GUI.exe
Binary file not shown.
290 changes: 290 additions & 0 deletions ADB GUI/Executable/keyevents.json

Large diffs are not rendered by default.

Binary file added ADB GUI/Executable/wallpaper.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions ADB GUI/Releases.url
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[InternetShortcut]
URL=https://github.com/imvickykumar999/ADB-Screen-Copy/releases
130 changes: 130 additions & 0 deletions ADB GUI/ScrCpy_GUI.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@

# pyinstaller --onefile ScrCpy_GUI.py

import os, json
import threading
from tkinter import *

ip = input('''
----------------------------------------
Press `CTRL + PAUSE/BREAK` keys to exit.
Press ENTER for default IP
192.168.0.103
----------------------------------------
Paste IP Address of Device : ''')


def task1():
global ip
print()

print("Task 1 assigned to thread: {}".format(threading.current_thread().name))
print("ID of process running task 1: {}".format(os.getpid()))

if ip == '':
ip = '192.168.0.103'

while True:
print()
os.system(f'scrcpy --tcpip={ip}')


def task2():
print()

print("Task 2 assigned to thread: {}".format(threading.current_thread().name))
print("ID of process running task 2: {}".format(os.getpid()))

def power():
os.system(f'adb -s {ip} shell input keyevent 26')

def volup():
os.system(f'adb -s {ip} shell input keyevent 24')

def voldown():
os.system(f'adb -s {ip} shell input keyevent 25')

def submit(x):
try:
if x == '':
os.system('Executable/keyevents.json')
else:
os.system(f'adb -s {ip} shell input keyevent {x}')
except Exception as e:
print(e)

def fun():
key = num_list.get(num_list.curselection()[0])
key = key.split(' : ')[0]
os.system(f'adb -s {ip} shell input keyevent {key}')

while True:
root = Tk()
root.geometry("300x600")
root.title("ScrCpy GUI")
root.config(bg="gray")

try:
rely3 = 0.7
rely4 = 0.8
rely5 = 0.9

bg = PhotoImage(file = "Executable/wallpaper.png")
label = Label( root, image = bg)
label.place(x = 0, y = 0)

num_list = Listbox(root, height=15, width=30)
with open('Executable/keyevents.json') as f:
data = json.load(f)

for i in data['key_events']:
j = data['key_events'][i]
k = j.split('adb shell input keyevent ')
num_list.insert(k[1], f'{k[1]} : {i.split("key_")[1]}')

num_list.place(relx=0.5, rely=0.4, anchor='center')
get_num_btn = Button(root, bg='green', text="Run ADB", command=fun)
get_num_btn.place(relx=0.5, rely=0.1, anchor='center')

except:
rely3 = 0.5
rely4 = 0.6
rely5 = 0.8

event = StringVar()
btn1 = Entry(root, textvariable = event)

btn1.insert(0, '209') # Open Music App
btn1.place(relx=0.5, rely=0.1, anchor='center')

btn2 = Button(root, bg='green', text = 'Keyevent', command=lambda: submit(event.get()))
btn2.place(relx=0.5, rely=0.2, anchor='center')

btn3 = Button(root, text="Volume Up", command=volup)
btn3.place(relx=0.5, rely=rely3, anchor='center')

btn4 = Button(root, text="Volume Down", command=voldown)
btn4.place(relx=0.5, rely=rely4, anchor='center')

btn5 = Button(root, bg='red', text="Power ON / OFF", command=power)
btn5.place(relx=0.5, rely=rely5, anchor='center')
root.mainloop()


if __name__ == "__main__":
os.system('color 2')
print()

print("ID of process running main program: {}".format(os.getpid()))
print("Main thread name: {}".format(threading.current_thread().name))

t1 = threading.Thread(target=task1, name='t1')
t2 = threading.Thread(target=task2, name='t2')

t1.start()
t2.start()

t1.join()
t2.join()
Binary file added ADB GUI/record.mp4
Binary file not shown.
16 changes: 16 additions & 0 deletions ADB GUI/web_view.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@

# https://github.com/Andereoo/TkinterWeb/issues/89#issue-1994361750
# pip install tkinterweb -U

from tkinterweb import HtmlFrame #import the HTML browser
try:
import tkinter as tk #python3
except ImportError:
import Tkinter as tk #python2

root = tk.Tk() #create the tkinter window
frame = HtmlFrame(root) #create HTML browser

frame.load_website("http://tkhtml.tcl.tk/tkhtml.html") #load a website
frame.pack(fill="both", expand=True) #attach the HtmlFrame widget to the parent window
root.mainloop()
1 change: 1 addition & 0 deletions Dark Web/HiddenServiceDir/hostname
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
4j6okteso3wnt4hpgcwqsso3sixhuwctlrhd6ofdep5qgtfp25fchkid.onion
Binary file added Dark Web/HiddenServiceDir/hs_ed25519_public_key
Binary file not shown.
4 changes: 4 additions & 0 deletions Dark Web/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@

![image](https://github.com/imvickykumar999/ADB-Screen-Copy/assets/50515418/9670d387-e434-4578-a1f5-f6a842a339f2)
![image](https://github.com/imvickykumar999/ADB-Screen-Copy/assets/50515418/b210a6ca-d1d1-4f53-a3f8-8f04b693b2e5)
![image](https://github.com/imvickykumar999/ADB-Screen-Copy/assets/50515418/784c0251-57d4-4b16-858b-2a5c44a11b09)
Binary file added Dark Web/ScreenRecord/192.168.0.103.mp4
Binary file not shown.
76 changes: 76 additions & 0 deletions Dark Web/VicksTor.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@

def run_server(server = 'flask'):
import os, time
from stem.control import Controller

onion = 'HiddenServiceDir'
_port = ':9151'
torrc_loc = input('\nEnter installed path of Tor Browser : ')

if torrc_loc == '':
torrc_loc = fr'C:\Users\{os.getlogin()}\Desktop\Repository\Host-Onion\Tor Browser'
# torrc_loc = f'C:/Users/{os.getlogin()}/Desktop/Tor Browser'
torrc_loc_ = torrc_loc.replace('\\', '/')

if server.lower() == 'xampp':
_port = ''
xampp_loc = input('\nEnter installed path of XAMPP : ')

if xampp_loc == '':
xampp_loc = fr'C:\Users\{os.getlogin()}\Desktop\Repository\Host-Onion\xampp\xampp-control.exe'
# xampp_loc = fr'C:\xampp\xampp-control.exe'
os.startfile(xampp_loc)

torrc = f'''
# This file was generated by Tor; if you edit it, comments will not be preserved
# The old torrc file was renamed to torrc.orig.1, and Tor will ignore it
ClientOnionAuthDir {torrc_loc}\Browser\TorBrowser\Data\Tor\onion-auth
DataDirectory {torrc_loc}\Browser\TorBrowser\Data\Tor
GeoIPFile {torrc_loc}\Browser\TorBrowser\Data\Tor\geoip
GeoIPv6File {torrc_loc}\Browser\TorBrowser\Data\Tor\geoip6
HiddenServiceDir {os.path.join(os.getcwd(), onion)}
HiddenServicePort 80 127.0.0.1{_port}
'''

with open(torrc_loc_ + '/Browser/TorBrowser/Data/Tor/torrc', 'w') as f:
f.write(torrc)

try: os.mkdir(onion)
except: pass

firefox = torrc_loc + r'\Browser\firefox.exe'
os.startfile(firefox)
time.sleep(10)

port = 5000
host = "127.0.0.1"
hidden_svc_dir = os.path.join(os.getcwd(), onion).replace('\\', '/')

try:
if server.lower() == 'flask':
print(" * Getting controller")
controller = Controller.from_port(address = host, port=9151)

controller.authenticate(password="")
controller.set_options([
("HiddenServiceDir", hidden_svc_dir),
("HiddenServicePort", "80 %s:%s" % (host, str(port)))
]
)
else:
print('''
Run Server:
XAMPP Control Panel
Module: Apache
Action: Start
''')

svc_name = open(hidden_svc_dir + "/hostname", "r").read().strip()
print (f"\n * Created host: {svc_name}\n")

except Exception as e:
print(e)

# run_server('xampp')
Binary file added Dark Web/__pycache__/VicksTor.cpython-39.pyc
Binary file not shown.
42 changes: 42 additions & 0 deletions Dark Web/app.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@

# from HostTor import VicksTor
import VicksTor as vix
vix.run_server('flask')

from flask import (
Flask,
render_template,
send_from_directory
)

import os
from datetime import datetime

app = Flask(__name__, template_folder='./')
path = 'ScreenRecord'

@app.route(f'/{path}/<path:filename>')
def send_file(filename):
return send_from_directory(f'./{path}', filename)

@app.route('/')
def hello_world():
mod = []
files = os.listdir(f'./{path}')

for i in files:
t = os.path.getmtime(f'./{path}/{i}')
t = datetime.fromtimestamp(t).strftime('%d-%m-%Y %H:%M:%S')

s = os.path.getsize(f'./{path}/{i}') / 1048576
s = round(s, 2)
mod.append((i, t, s))

return render_template(
'index.html',
path=path,
files=mod,
)

if __name__ == '__main__':
app.run(debug = False)
29 changes: 29 additions & 0 deletions Dark Web/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html><link type="text/css" rel="stylesheet" id="dark-mode-custom-link"><link type="text/css" rel="stylesheet" id="dark-mode-general-link"><style lang="en" type="text/css" id="dark-mode-custom-style"></style><style lang="en" type="text/css" id="dark-mode-native-style"></style><style lang="en" type="text/css" id="dark-mode-native-sheet"></style><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><style data-merge-styles="true"></style>
<title>Index of /{{path}}</title>
</head>

<body data-new-gr-c-s-check-loaded="14.1134.0" data-gr-ext-installed="">
<h1>Index of /{{path}}</h1>

<table id="myTable">
<tbody>
<tr><th onclick="sortTable(0)" valign="top"><img src="./static/blank.gif" alt="[ICO]"></th><th onclick="sortTable(1)">Name</th><th onclick="sortTable(2)">Last modified</th><th onclick="sortTable(3)">Size</th><th onclick="sortTable(4)">Description</th></tr>
<tr><th colspan="5"><hr></th></tr>
<tr><td valign="top"><img src="./static/back.gif" alt="[PARENTDIR]"></td><td><a href="./">Parent Directory</a> </td><td>&nbsp;</td><td align="right"> - </td><td>&nbsp;</td></tr>

{% for i, t, s in files %}
<tr><td valign="top"><img src="./static/movie.gif" alt="[VID]"></td><td><a target="_blank" href="./ScreenRecord/{{i}}">{{i}}</a> </td><td align="right"> {{t}} </td><td align="right"> {{s}} MB </td><td>&nbsp;</td></tr>
{% endfor %}

<tr><th colspan="5"><hr></th></tr>
</tbody>
</table>

<!--
https://www.w3schools.com/howto/tryit.asp?filename=tryhow_js_sort_table_desc
-->

</body>
</html>
3 changes: 3 additions & 0 deletions Dark Web/record.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@

scrcpy --tcpip=192.168.0.103
scrcpy --tcpip=192.168.0.103 -r "ScreenRecord/192.168.0.103.mp4"
Binary file added Dark Web/static/back.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Dark Web/static/blank.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Dark Web/static/movie.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit ec747da

Please sign in to comment.