Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
cfa4097
removed support for tor
sdushantha Jun 26, 2024
44ad8f5
Lint
ppfeister Jun 29, 2024
2016892
Remove torrequest dep
ppfeister Jun 29, 2024
dc89f1c
feat: Add dcinside
hanjm-github Sep 30, 2025
e5cd5e5
feat: Add namuwiki
hanjm-github Sep 30, 2025
86140af
feat: Add SOOP
hanjm-github Sep 30, 2025
cd7c52e
Feat: Add tistory
hanjm-github Sep 30, 2025
7b3632b
Add comment to site 'namuwiki'
hanjm-github Oct 2, 2025
355bfbd
fix(sites): Remediate false positive for DeviantArt
shreyasNaik0101 Oct 2, 2025
b811b2b
chore: update code owners
ppfeister Oct 2, 2025
072c246
Merge pull request #2558 from hanjm-github/master
ppfeister Oct 2, 2025
779d4c3
fix: Remove username_unclaimed as requested
shreyasNaik0101 Oct 2, 2025
9c18cfe
Merge pull request #2563 from sherlock-project/chore/update-co
ppfeister Oct 2, 2025
c89a52c
fix(sites): Remediate false positive for AllMyLinks
shreyasNaik0101 Oct 2, 2025
d314d75
fix(sites): Remediate false positive for Mydramalist
shreyasNaik0101 Oct 2, 2025
edcb697
Merge pull request #2564 from shreyasNaik0101/fix/remediate-allmylinks
ppfeister Oct 2, 2025
c55deab
Merge pull request #2561 from shreyasNaik0101/fix/remediate-deviantart
ppfeister Oct 2, 2025
66d9733
Merge pull request #2565 from shreyasNaik0101/fix/remediate-mydramalist
ppfeister Oct 2, 2025
b245c46
fix(sites): Remediate false positive for Apple Discussions
shreyasNaik0101 Oct 3, 2025
1d2c4b1
Merge pull request #2570 from shreyasNaik0101/fix/remediate-appledisc…
ppfeister Oct 3, 2025
0e7219b
Security Fix: Add timeout parameters to HTTP requests
dollaransh17 Oct 3, 2025
57a0cce
Remediate False Positive for Roblox
akh7177 Oct 4, 2025
977ad5c
Remediate False Positive for SlideShare
akh7177 Oct 4, 2025
5cd769c
Remediate False Positives for CyberDefenders
akh7177 Oct 4, 2025
dc86985
fix(sites): Fix Threads false positive detection
dollaransh17 Oct 4, 2025
b99719c
Add Docker build test to CI workflow
obiwan04kanobi Oct 4, 2025
d152737
Merge pull request #2584 from akh7177/remediate-roblox-fp
ppfeister Oct 4, 2025
4ec6f1e
Merge pull request #2585 from akh7177/remediate-slideshare-fp
ppfeister Oct 4, 2025
a678bed
Merge pull request #2587 from akh7177/remediate-cyberdefenders-fp
ppfeister Oct 4, 2025
975965a
Merge pull request #2589 from dollaransh17/fix/threads-false-positive
ppfeister Oct 4, 2025
0794e02
feat: support multiple errorTypes
ppfeister Oct 4, 2025
cfcc82a
Merge pull request #2597 from sherlock-project/feat/multiple-types
ppfeister Oct 4, 2025
947f1ad
Merge pull request #2574 from dollaransh17/fix/http-request-timeouts
ppfeister Oct 4, 2025
52cd5fd
feat: gracefully skip sites with invalid errorType
ppfeister Oct 5, 2025
e44fe49
Merge pull request #2601 from sherlock-project/feat/graceful-skip
ppfeister Oct 5, 2025
4246a7b
chore: make default --no-txt
ppfeister Oct 5, 2025
3aeb6d6
Merge pull request #2602 from sherlock-project/feat/no-txt
ppfeister Oct 5, 2025
7379ba7
Merge branch 'remove-tor'
ppfeister Oct 5, 2025
f32f4ff
Merge pull request #2595 from obiwan04kanobi/feature/issue-2196-ci-do…
ppfeister Oct 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
### REPOSITORY
/.github/CODEOWNERS @sdushantha
/.github/CODEOWNERS @sdushantha @ppfeister
/.github/FUNDING.yml @sdushantha
/LICENSE @sdushantha

Expand Down
27 changes: 25 additions & 2 deletions .github/workflows/regression.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ on:
- '**/*.py'
- '**/*.ini'
- '**/*.toml'
- 'Dockerfile'
push:
branches:
- master
Expand All @@ -21,11 +22,13 @@ on:
- '**/*.py'
- '**/*.ini'
- '**/*.toml'
- 'Dockerfile'

jobs:
tox-lint:
# Linting is ran through tox to ensure that the same linter is used by local runners
runs-on: ubuntu-latest
# Linting is ran through tox to ensure that the same linter
# is used by local runners
steps:
- uses: actions/checkout@v4
- name: Set up linting environment
Expand All @@ -41,7 +44,8 @@ jobs:
tox-matrix:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false # We want to know what specicic versions it fails on
# We want to know what specicic versions it fails on
fail-fast: false
matrix:
os: [
ubuntu-latest,
Expand All @@ -67,3 +71,22 @@ jobs:
pip install tox-gh-actions
- name: Run tox
run: tox
docker-build-test:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Get version from pyproject.toml
id: get-version
run: |
VERSION=$(grep -m1 'version = ' pyproject.toml | cut -d'"' -f2)
echo "version=$VERSION" >> $GITHUB_OUTPUT
- name: Build Docker image
run: |
docker build \
--build-arg VERSION_TAG=${{ steps.get-version.outputs.version }} \
-t sherlock-test:latest .
- name: Test Docker image runs
run: docker run --rm sherlock-test:latest --version
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# 3. Build image with BOTH latest and version tags
# i.e. `docker build -t sherlock/sherlock:0.16.0 -t sherlock/sherlock:latest .`

FROM python:3.12-slim-bullseye as build
FROM python:3.12-slim-bullseye AS build
WORKDIR /sherlock

RUN pip3 install --no-cache-dir --upgrade pip
Expand Down
4 changes: 0 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -46,14 +46,10 @@ PySocks = "^1.7.0"
requests = "^2.22.0"
requests-futures = "^1.0.0"
stem = "^1.8.0"
torrequest = "^0.1.0"
pandas = "^2.2.1"
openpyxl = "^3.0.10"
tomli = "^2.2.1"

[tool.poetry.extras]
tor = ["torrequest"]

[tool.poetry.group.dev.dependencies]
jsonschema = "^4.0.0"
rstr = "^3.2.2"
Expand Down
79 changes: 52 additions & 27 deletions sherlock_project/resources/data.json
Original file line number Diff line number Diff line change
Expand Up @@ -79,13 +79,13 @@
"username_claimed": "pink"
},
"AllMyLinks": {
"errorMsg": "Not Found",
"errorType": "message",
"regexCheck": "^[a-z0-9][a-z0-9-]{2,32}$",
"url": "https://allmylinks.com/{}",
"urlMain": "https://allmylinks.com/",
"username_claimed": "blue"
},
"errorMsg": "Page not found",
"errorType": "message",
"regexCheck": "^[a-z0-9][a-z0-9-]{2,32}$",
"url": "https://allmylinks.com/{}",
"urlMain": "https://allmylinks.com/",
"username_claimed": "blue"
},
"AniWorld": {
"errorMsg": "Dieses Profil ist nicht verf\u00fcgbar",
"errorType": "message",
Expand Down Expand Up @@ -115,7 +115,7 @@
"username_claimed": "lio24d"
},
"Apple Discussions": {
"errorMsg": "The page you tried was not found. You may have used an outdated link or may have typed the address (URL) incorrectly.",
"errorMsg": "Looking for something in Apple Support Communities?",
"errorType": "message",
"url": "https://discussions.apple.com/profile/{}",
"urlMain": "https://discussions.apple.com",
Expand Down Expand Up @@ -572,8 +572,7 @@
"username_claimed": "brown"
},
"CyberDefenders": {
"errorMsg": "<title>Blue Team Training for SOC analysts and DFIR - CyberDefenders</title>",
"errorType": "message",
"errorType": "status_code",
"regexCheck": "^[^\\/:*?\"<>|@]{3,50}$",
"request_method": "GET",
"url": "https://cyberdefenders.org/p/{}",
Expand All @@ -600,6 +599,12 @@
"urlMain": "https://www.dailymotion.com/",
"username_claimed": "blue"
},
"dcinside": {
"errorType": "status_code",
"url": "https://gallog.dcinside.com/{}",
"urlMain": "https://www.dcinside.com/",
"username_claimed": "anrbrb"
},
"Dealabs": {
"errorMsg": "La page que vous essayez",
"errorType": "message",
Expand All @@ -608,13 +613,14 @@
"urlMain": "https://www.dealabs.com/",
"username_claimed": "blue"
},
"DeviantART": {
"errorType": "status_code",
"regexCheck": "^[a-zA-Z][a-zA-Z0-9_-]*$",
"url": "https://{}.deviantart.com",
"urlMain": "https://deviantart.com",
"username_claimed": "blue"
},
"DeviantArt": {
"errorType": "message",
"errorMsg": "Llama Not Found",
"regexCheck": "^[a-zA-Z][a-zA-Z0-9_-]*$",
"url": "https://www.deviantart.com/{}",
"urlMain": "https://www.deviantart.com/",
"username_claimed": "blue"
},
"DigitalSpy": {
"errorMsg": "The page you were looking for could not be found.",
"errorType": "message",
Expand Down Expand Up @@ -1440,12 +1446,12 @@
"username_claimed": "blue"
},
"Mydramalist": {
"errorMsg": "Sign in - MyDramaList",
"errorType": "message",
"url": "https://www.mydramalist.com/profile/{}",
"urlMain": "https://mydramalist.com",
"username_claimed": "elhadidy12398"
},
"errorMsg": "The requested page was not found",
"errorType": "message",
"url": "https://www.mydramalist.com/profile/{}",
"urlMain": "https://mydramalist.com",
"username_claimed": "elhadidy12398"
},
"Myspace": {
"errorType": "status_code",
"url": "https://myspace.com/{}",
Expand All @@ -1459,6 +1465,13 @@
"urlMain": "https://www.native-instruments.com/forum/",
"username_claimed": "jambert"
},
"namuwiki": {
"__comment__": "This is a Korean site and it's expected to return false negatives in certain other regions.",
"errorType": "status_code",
"url": "https://namu.wiki/w/%EC%82%AC%EC%9A%A9%EC%9E%90:{}",
"urlMain": "https://namu.wiki/",
"username_claimed": "namu"
},
"NationStates Nation": {
"errorMsg": "Was this your nation? It may have ceased to exist due to inactivity, but can rise again!",
"errorType": "message",
Expand Down Expand Up @@ -1809,8 +1822,7 @@
"username_claimed": "blue"
},
"Roblox": {
"errorMsg": "Page cannot be found or no longer exists",
"errorType": "message",
"errorType": "status_code",
"url": "https://www.roblox.com/user.aspx?username={}",
"urlMain": "https://www.roblox.com/",
"username_claimed": "bluewolfekiller"
Expand Down Expand Up @@ -1918,7 +1930,7 @@
},
"SlideShare": {
"errorType": "message",
"errorMsg": "<title>Username available</title>",
"errorMsg": "<title>Page no longer exists</title>",
"url": "https://slideshare.net/{}",
"urlMain": "https://slideshare.net/",
"username_claimed": "blue"
Expand Down Expand Up @@ -1952,6 +1964,13 @@
"urlMain": "https://www.snapchat.com",
"username_claimed": "teamsnapchat"
},
"SOOP": {
"errorType": "status_code",
"url": "https://www.sooplive.co.kr/station/{}",
"urlMain": "https://www.sooplive.co.kr/",
"urlProbe": "https://api-channel.sooplive.co.kr/v1.1/channel/{}/station",
"username_claimed": "udkn"
},
"SoundCloud": {
"errorType": "status_code",
"url": "https://soundcloud.com/{}",
Expand Down Expand Up @@ -2119,6 +2138,12 @@
"urlMain": "https://themeforest.net/",
"username_claimed": "user"
},
"tistory": {
"errorType": "status_code",
"url": "https://{}.tistory.com/",
"urlMain": "https://www.tistory.com/",
"username_claimed": "notice"
},
"TnAFlix": {
"errorType": "status_code",
"isNSFW": true,
Expand Down Expand Up @@ -2793,7 +2818,7 @@
"username_claimed": "green"
},
"threads": {
"errorMsg": "<title>Threads</title>",
"errorMsg": "<title>Threads • Log in</title>",
"errorType": "message",
"headers": {
"Sec-Fetch-Mode": "navigate"
Expand Down
Loading
Loading