Skip to content

Commit 4363213

Browse files
committed
feat!: Added blacklist for OSINT. Requires assets/blacklist.txt
1 parent 3b5a8b1 commit 4363213

File tree

3 files changed

+74
-57
lines changed

3 files changed

+74
-57
lines changed

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@
22
.direnv
33
.envrc
44
test.py
5-
*.png
5+
*.png
6+
blacklist.txt

README.md

+56-56
Original file line numberDiff line numberDiff line change
@@ -22,55 +22,17 @@ All commands are alternatively available as slash commands that better indicate
2222

2323
## Commands
2424

25-
### R6
26-
27-
#### Economy
28-
29-
` >>r6 econ graph <item name | item id>`
30-
- Graphs the all-time history of an item.
31-
32-
` >>r6 econ list`
33-
` >>r6 econ list <page #>`
34-
- Lists all available skins.
35-
36-
` >>r6 econ transfer`
37-
` >>r6 econ transfer <ubisoft email> <ubisoft password>`
38-
- Finds the items with the least sellers either globally or on the account with the provided login.
39-
40-
` >>r6 econ analyze <item name | item id>`
41-
- Creates a detailed data sheet on an item.
42-
43-
` >>r6 econ profit <$ bought for> <item name | item id>`
44-
- Calculates the amount you would make if you sold your item right now.
45-
46-
#### OPSEC
47-
48-
` >>r6 opsec xbox <username>`
49-
- Looks up a Ubisoft account based on their registered Xbox username.
50-
51-
` >>r6 opsec applications <username>`
52-
- Looks up a Ubisoft account based on their username (PC only).
53-
54-
` >>r6 opsec psn <username>`
55-
- Looks up a Ubisoft account based on their registered PSN username.
56-
57-
` >>r6 opsec pc <username>`
58-
- Looks up a Ubisoft account based on their registered PC username.
59-
60-
` >>r6 opsec recon <username>`
61-
- Analyzes a Ubisoft account for suspicious behaviour based on their username (PC only).
62-
6325
### Admin
6426

27+
` >>admin whitelist <section> <user id>`
28+
- Adds a person to the authorized user list.
29+
6530
` >>admin announce <sections> <message>`
6631
- Announces a message to all whitelisted users.
6732

6833
` >>admin blacklist <section> <user id>`
6934
- Removes a person from the authorized user list.
7035

71-
` >>admin whitelist <section> <user id>`
72-
- Adds a person to the authorized user list.
73-
7436
` >>admin dm <user id> <message>`
7537
- DMs a message to a specific user.
7638

@@ -81,39 +43,77 @@ All commands are alternatively available as slash commands that better indicate
8143
` >>osint query hash <hash>`
8244
- Queries for leaks based on a hash.
8345

84-
` >>osint query password <password>`
85-
- Queries for leaks based on a password.
46+
` >>osint query ip <ip>`
47+
- Queries for leaks based on a last IP.
8648

87-
` >>osint query name <name>`
88-
- Queries for leaks based on a name.
49+
` >>osint query username <username>`
50+
- Queries for leaks based on a username.
8951

9052
` >>osint query email <email>`
9153
- Queries for leaks based on an email.
9254

93-
` >>osint query username <username>`
94-
- Queries for leaks based on a username.
55+
` >>osint query password <password>`
56+
- Queries for leaks based on a password.
9557

96-
` >>osint query ip <ip>`
97-
- Queries for leaks based on a last IP.
58+
` >>osint query name <name>`
59+
- Queries for leaks based on a name.
9860

9961
#### Hashing
10062

101-
` >>osint hash dehash <hash>`
102-
- Dehashes a hash into pre-cracked passwords.
103-
10463
` >>osint hash rehash <password>`
10564
- Rehashes a password into pre-hashed hashes.
10665

66+
` >>osint hash dehash <hash>`
67+
- Dehashes a hash into pre-cracked passwords.
68+
10769
#### Other
10870

109-
` >>osint phone <phone number>`
110-
- Perform a Caller ID lookup on a phone number.
71+
` >>osint sherlock <username>`
72+
- Cross-references sites with a given username.
11173

11274
` >>osint geolocate <ip>`
11375
- Geolocates an IP.
11476

115-
` >>osint sherlock <username>`
116-
- Cross-references sites with a given username.
77+
` >>osint phone <phone number>`
78+
- Perform a Caller ID lookup on a phone number.
79+
80+
### R6
81+
82+
#### Economy
83+
84+
` >>r6 econ transfer`
85+
` >>r6 econ transfer <ubisoft email> <ubisoft password>`
86+
- Finds the items with the least sellers either globally or on the account with the provided login.
87+
88+
` >>r6 econ list`
89+
` >>r6 econ list <page #>`
90+
- Lists all available skins.
91+
92+
` >>r6 econ analyze <item name | item id>`
93+
- Creates a detailed data sheet on an item.
94+
95+
` >>r6 econ graph <item name | item id>`
96+
- Graphs the all-time history of an item.
97+
98+
` >>r6 econ profit <$ bought for> <item name | item id>`
99+
- Calculates the amount you would make if you sold your item right now.
100+
101+
#### OPSEC
102+
103+
` >>r6 opsec xbox <username>`
104+
- Looks up a Ubisoft account based on their registered Xbox username.
105+
106+
` >>r6 opsec pc <username>`
107+
- Looks up a Ubisoft account based on their registered PC username.
108+
109+
` >>r6 opsec applications <username>`
110+
- Looks up a Ubisoft account based on their username (PC only).
111+
112+
` >>r6 opsec psn <username>`
113+
- Looks up a Ubisoft account based on their registered PSN username.
114+
115+
` >>r6 opsec recon <username>`
116+
- Analyzes a Ubisoft account for suspicious behaviour based on their username (PC only).
117117

118118

119119
## Setup

src/sections/osint.rs

+16
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,22 @@ pub async fn lookup(
2121
mut args: VecDeque<String>,
2222
lookup_type: &str
2323
) -> Result<(), String> {
24+
// First, load the blacklisted strings from ./assets/blacklist.txt
25+
let blacklisted_strings = std::fs::read_to_string("./assets/blacklist.txt")
26+
.expect("Failed to read blacklist.txt!")
27+
.split("\n")
28+
.map(|s| s.to_string())
29+
.collect::<Vec<String>>();
30+
31+
// Check if the query contains any blacklisted strings
32+
for arg in &args {
33+
for blacklisted_string in &blacklisted_strings {
34+
if arg.contains(blacklisted_string) {
35+
return Err(format!("The query contains a blacklisted piece of information: `{}` If this is in error, please contact @hiibolt.", blacklisted_string));
36+
}
37+
}
38+
}
39+
2440
let snusbase_response_result = match lookup_type {
2541
"email" => {
2642
let mut ret = Err(anyhow::anyhow!("No email provided!"));

0 commit comments

Comments
 (0)