Skip to content

Commit 5ac6107

Browse files
committed
feat: Added blacklisting for phone numbers.
1 parent e9d2918 commit 5ac6107

File tree

2 files changed

+76
-58
lines changed

2 files changed

+76
-58
lines changed

README.md

Lines changed: 58 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -22,98 +22,98 @@ All commands are alternatively available as slash commands that better indicate
2222

2323
## Commands
2424

25-
### Admin
25+
### R6
2626

27-
` >>admin dm <user id> <message>`
28-
- DMs a message to a specific user.
27+
#### Economy
2928

30-
` >>admin announce <sections> <message>`
31-
- Announces a message to all whitelisted users.
29+
` >>r6 econ transfer`
30+
` >>r6 econ transfer <ubisoft email> <ubisoft password>`
31+
- Finds the items with the least sellers either globally or on the account with the provided login.
3232

33-
` >>admin whitelist <section> <user id>`
34-
- Adds a person to the authorized user list.
33+
` >>r6 econ graph <item name | item id>`
34+
- Graphs the all-time history of an item.
3535

36-
` >>admin blacklist <section> <user id>`
37-
- Removes a person from the authorized user list.
36+
` >>r6 econ list`
37+
` >>r6 econ list <page #>`
38+
- Lists all available skins.
3839

39-
### OSINT
40+
` >>r6 econ analyze <item name | item id>`
41+
- Creates a detailed data sheet on an item.
4042

41-
#### Queries
43+
` >>r6 econ profit <$ bought for> <item name | item id>`
44+
- Calculates the amount you would make if you sold your item right now.
4245

43-
` >>osint query name <name>`
44-
- Queries for leaks based on a name.
46+
#### OPSEC
4547

46-
` >>osint query ip <ip>`
47-
- Queries for leaks based on a last IP.
48+
` >>r6 opsec pc <username>`
49+
- Looks up a Ubisoft account based on their registered PC username.
4850

49-
` >>osint query email <email>`
50-
- Queries for leaks based on an email.
51+
` >>r6 opsec xbox <username>`
52+
- Looks up a Ubisoft account based on their registered Xbox username.
5153

52-
` >>osint query username <username>`
53-
- Queries for leaks based on a username.
54+
` >>r6 opsec recon <username>`
55+
- Analyzes a Ubisoft account for suspicious behaviour based on their username (PC only).
5456

55-
` >>osint query hash <hash>`
56-
- Queries for leaks based on a hash.
57+
` >>r6 opsec psn <username>`
58+
- Looks up a Ubisoft account based on their registered PSN username.
5759

58-
` >>osint query password <password>`
59-
- Queries for leaks based on a password.
60+
` >>r6 opsec applications <username>`
61+
- Looks up a Ubisoft account based on their username (PC only).
6062

61-
#### Hashing
63+
### OSINT
6264

63-
` >>osint hash rehash <password>`
64-
- Rehashes a password into pre-hashed hashes.
65+
#### Hashing
6566

6667
` >>osint hash dehash <hash>`
6768
- Dehashes a hash into pre-cracked passwords.
6869

69-
#### Other
70+
` >>osint hash rehash <password>`
71+
- Rehashes a password into pre-hashed hashes.
7072

71-
` >>osint phone <phone number>`
72-
- Perform a Caller ID lookup on a phone number.
73+
#### Queries
7374

74-
` >>osint geolocate <ip>`
75-
- Geolocates an IP.
75+
` >>osint query hash <hash>`
76+
- Queries for leaks based on a hash.
7677

77-
` >>osint sherlock <username>`
78-
- Cross-references sites with a given username.
78+
` >>osint query name <name>`
79+
- Queries for leaks based on a name.
7980

80-
### R6
81+
` >>osint query username <username>`
82+
- Queries for leaks based on a username.
8183

82-
#### Economy
84+
` >>osint query email <email>`
85+
- Queries for leaks based on an email.
8386

84-
` >>r6 econ profit <$ bought for> <item name | item id>`
85-
- Calculates the amount you would make if you sold your item right now.
87+
` >>osint query ip <ip>`
88+
- Queries for leaks based on a last IP.
8689

87-
` >>r6 econ transfer`
88-
` >>r6 econ transfer <ubisoft email> <ubisoft password>`
89-
- Finds the items with the least sellers either globally or on the account with the provided login.
90+
` >>osint query password <password>`
91+
- Queries for leaks based on a password.
9092

91-
` >>r6 econ list`
92-
` >>r6 econ list <page #>`
93-
- Lists all available skins.
93+
#### Other
9494

95-
` >>r6 econ analyze <item name | item id>`
96-
- Creates a detailed data sheet on an item.
95+
` >>osint sherlock <username>`
96+
- Cross-references sites with a given username.
9797

98-
` >>r6 econ graph <item name | item id>`
99-
- Graphs the all-time history of an item.
98+
` >>osint geolocate <ip>`
99+
- Geolocates an IP.
100100

101-
#### OPSEC
101+
` >>osint phone <phone number>`
102+
- Perform a Caller ID lookup on a phone number.
102103

103-
` >>r6 opsec pc <username>`
104-
- Looks up a Ubisoft account based on their registered PC username.
104+
### Admin
105105

106-
` >>r6 opsec psn <username>`
107-
- Looks up a Ubisoft account based on their registered PSN username.
106+
` >>admin dm <user id> <message>`
107+
- DMs a message to a specific user.
108108

109-
` >>r6 opsec applications <username>`
110-
- Looks up a Ubisoft account based on their username (PC only).
109+
` >>admin blacklist <section> <user id>`
110+
- Removes a person from the authorized user list.
111111

112-
` >>r6 opsec recon <username>`
113-
- Analyzes a Ubisoft account for suspicious behaviour based on their username (PC only).
112+
` >>admin whitelist <section> <user id>`
113+
- Adds a person to the authorized user list.
114114

115-
` >>r6 opsec xbox <username>`
116-
- Looks up a Ubisoft account based on their registered Xbox username.
115+
` >>admin announce <sections> <message>`
116+
- Announces a message to all whitelisted users.
117117

118118

119119
## Setup

src/sections/osint.rs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,24 @@ pub async fn cnam_lookup(
259259
sendable: Arc<Mutex<Sendable>>,
260260
mut args: VecDeque<String>
261261
) -> Result<(), String> {
262+
// First, load the blacklisted strings from ./assets/blacklist.txt
263+
let blacklisted_strings = std::fs::read_to_string("./assets/blacklist.txt")
264+
.expect("Failed to read blacklist.txt!")
265+
.split("\n")
266+
.map(|s| s.to_string())
267+
.collect::<Vec<String>>();
268+
269+
let mut cloned_args = args.clone();
270+
let first_arg = cloned_args.pop_front();
271+
272+
// Check if the query contains any blacklisted strings
273+
for blacklisted_string in &blacklisted_strings {
274+
if let Some(ref ar) = first_arg {
275+
if *ar == *blacklisted_string {
276+
return Err(format!("The query contains a blacklisted string: '{}'. If this is in error, please contact @hiibolt!", blacklisted_string));
277+
}
278+
}
279+
}
262280
let phone_number = args.pop_front()
263281
.ok_or(String::from("Missing phone number!"))?;
264282

0 commit comments

Comments
 (0)