forked from geekcomputers/Python
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrecyclebin.py
58 lines (43 loc) · 1.51 KB
/
recyclebin.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
from __future__ import print_function
import os # Load the Module
from _winreg import * # Load the Module
# Script Name : recyclebin.py
# Author : Craig Richards
# Created : 07th June 2013
# Last Modified :
# Version : 1.0
# Modifications :
# Description : Scans the recyclebin and displays the files in there, originally got this script from the Violent Python book
def sid2user(sid): # Start of the function to gather the user
try:
key = OpenKey(
HKEY_LOCAL_MACHINE,
"SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" + "\\" + sid,
)
(value, type) = QueryValueEx(key, "ProfileImagePath")
user = value.split("\\")[-1]
return user
except Exception:
return sid
def returnDir(): # Start of the function to search through the recyclebin
dirs = ["c:\\Recycler\\", "C:\\Recycled\\", "C:\\$RECYCLE.BIN\\"]
# dirs=['c:\\$RECYCLE.BIN\\']
for recycleDir in dirs:
if os.path.isdir(recycleDir):
return recycleDir
return None
def findRecycled(
recycleDir,
): # Start of the function, list the contents of the recyclebin
dirList = os.listdir(recycleDir)
for sid in dirList:
files = os.listdir(recycleDir + sid)
user = sid2user(sid)
print("\n[*] Listing Files for User: " + str(user))
for file in files:
print("[+] Found File: " + str(file))
def main():
recycleDir = returnDir()
findRecycled(recycleDir)
if __name__ == "__main__":
main()