Compare commits

...

20 Commits

Author SHA1 Message Date
Janette Leyva e29ca2e9a4 cloudflare_supporter.txt 2021-04-01 13:55:52 +02:00
Chloe Medosch f24e6adf87 cloudflare_supporter.txt 2021-04-01 12:43:57 +02:00
Vasti Porter a31cfc1236 cloudflare_supporter.txt 2021-04-01 11:32:40 +02:00
Thomas Dubrawski a5a962f85d cloudflare_supporter.txt 2021-04-01 10:20:18 +02:00
Steven Pack 3065023e40 cloudflare_supporter.txt 2021-04-01 09:10:16 +02:00
Halley Kish 79ba7ea012 README.md 2021-04-01 08:57:55 +02:00
Piotr Sikora add62de035 README.md 2021-04-01 08:37:47 +02:00
William Robledo 669cdd21a6 README.md 2021-04-01 08:36:00 +02:00
Ayako Kobayashi 952df6f85f README.md 2021-04-01 08:35:29 +02:00
Paul Cesar 1e708ad68a example.json.is_cloudflare.php 2021-04-01 08:26:54 +02:00
David Fritsch da089ce9e7 cloudflare_supporter.txt 2021-04-01 07:59:08 +02:00
codebergcrimeflare eaa7f3d168 PR
PR
2021-04-01 06:58:08 +02:00
7trey c3fa7bcca0 Merge branch 'master' into master 2021-04-01 06:56:39 +02:00
7trey ce239394e3 Update 'cloudflare_users/domains/README.md' 2021-04-01 06:54:49 +02:00
7trey 3d3e70c381 Add 'tool/example.json.is_cloudflare.php' 2021-04-01 06:53:09 +02:00
Andrew Galloni 1cb578af83 cloudflare_supporter.txt 2021-04-01 06:49:07 +02:00
7trey 048892d249 Add 'tool/mastodonfind/index.php' 2021-04-01 06:42:30 +02:00
7trey ba265b7b8c Update 'tool/mastodonfind/README.md' 2021-04-01 06:40:50 +02:00
7trey d5664b4825 Update 'tool/mastodonfinder/README.md' 2021-04-01 06:40:33 +02:00
7trey b644536fbc Add 'tool/mastodonfind' 2021-04-01 06:39:30 +02:00
6 changed files with 293 additions and 2 deletions

View File

@ -68,15 +68,18 @@ https://social.avareborn.de/@nipos
https://social.privacytools.io/@BurungHantu
https://social.tchncs.de/@wallichii
https://twitter.com/AKuisorn/status/1377407076373164032
https://twitter.com/AngelaSneed14/status/1377523632595931143
https://twitter.com/ArMe69697866/status/1376913334377791492
https://twitter.com/ArteImmaginePh3/status/1370471352373772291
https://twitter.com/AskmeArunkc21/status/1370289301959835651
https://twitter.com/AungKha78798663/status/1376931924443299843
https://twitter.com/AungMyoThaung5/status/1377519613416644608
https://twitter.com/Auroprex/status/1376780261560512513
https://twitter.com/Aye_Blin/status/1376746566334050306
https://twitter.com/Aysha18981544/status/1375738614009724929
https://twitter.com/Ayush08264190/status/1377155965313675265
https://twitter.com/BhabishyaB/status/1370382367894904832
https://twitter.com/BhimeshG6/status/1377508173465051143
https://twitter.com/BryceGerhardt7/status/1377248264886513668
https://twitter.com/Bunny43788913/status/1376950304982327303
https://twitter.com/CaoKhChinh2/status/1377461966738841601
@ -88,6 +91,7 @@ https://twitter.com/DanOno365/status/1371618039108673545
https://twitter.com/DileepaMV/status/1372732617934606344
https://twitter.com/Dohuy49780349/status/1376800199079694336
https://twitter.com/ECcrasci/status/1376228756952469505
https://twitter.com/ElizabethGogou/status/1377578555954110465
https://twitter.com/GhostOfATown/status/1370596077007732737
https://twitter.com/GraysonDick10/status/1377270516231233538
https://twitter.com/GreatLakeHits/status/1377235337714499584
@ -103,12 +107,15 @@ https://twitter.com/ITSystemsAdmin/status/1373030532469112834
https://twitter.com/Jokergaming_911/status/1376949346571194369
https://twitter.com/JustAnotherPr10/status/1373365388000526347
https://twitter.com/KPauksa/status/1377192007555162112
https://twitter.com/KenKawai0/status/1377570971159126020
https://twitter.com/King53329368/status/1376742080689545220
https://twitter.com/KiranDeepak2/status/1376903066587262979
https://twitter.com/KoShweMya2/status/1376818370129981445
https://twitter.com/Krish98478242/status/1377175329249226756
https://twitter.com/KumarSs35774113/status/1376845791080423426
https://twitter.com/Kyal48869938/status/1377577578895044611
https://twitter.com/KyawSoe42046906/status/1377257974779932673
https://twitter.com/Kyawzin11854268/status/1377524474770120704
https://twitter.com/LAnh54291713/status/1376937564322422788
https://twitter.com/LHin00071152/status/1377265697613508612
https://twitter.com/LeVietH08159054/status/1377052679713660933
@ -116,20 +123,25 @@ https://twitter.com/LoppoZ/status/1377122374617681922
https://twitter.com/MSuriko/status/1376898848090583043
https://twitter.com/M_alamin95/status/1376986669270847497
https://twitter.com/ManishS14486946/status/1376922638216531974
https://twitter.com/Maria65592312/status/1377526795688239104
https://twitter.com/MeetMusical/status/1377296990149689347
https://twitter.com/MinKhan21997345/status/1377239209962921985
https://twitter.com/Mirakhiil/status/1377110594734628870
https://twitter.com/Momoko000Momoko/status/1377583637030268932
https://twitter.com/Morgan89660901/status/1376646842503602179
https://twitter.com/MyoThet04519795/status/1376759455396716552
https://twitter.com/NaingLi62048733/status/1377287803420086275
https://twitter.com/NguynNh50930915/status/1377310661793914884
https://twitter.com/NguynVn66653963/status/1377554948997611522
https://twitter.com/Nithu69837994/status/1377303487772454914
https://twitter.com/NitiSinghTomar1/status/1376880690516660226
https://twitter.com/Nyo33346283/status/1376720739886276608
https://twitter.com/OlTunexcon/status/1376669048839282690
https://twitter.com/OoLayGyiMdy/status/1377196818384121860
https://twitter.com/Owen92335115/status/1377489036877524995
https://twitter.com/PHOENIX67879992/status/1377366160702795781
https://twitter.com/Paing15947077/status/1377138757418196998
https://twitter.com/PanEiPh98425624/status/1377480471718686721
https://twitter.com/PhamThaiSon6/status/1377042683378601987
https://twitter.com/PhuongN09560858/status/1377291979885748228
https://twitter.com/Pineapp43234632/status/1377259907519373322
@ -145,27 +157,39 @@ https://twitter.com/SSuiteSoftware/status/1372875712240230400
https://twitter.com/SameerDangi9/status/1377450627631095808
https://twitter.com/Saturn52786089/status/1370285435193266176
https://twitter.com/SharifTech_/status/1377317759311224837
https://twitter.com/ShyZ97166261/status/1377466338998853634
https://twitter.com/Soesan36587499/status/1377539791168884738
https://twitter.com/Steferine4eva/status/1377275017172373506
https://twitter.com/Sunshin69624226/status/1376928070729224194
https://twitter.com/TONY18321536/status/1376917756486946817
https://twitter.com/TargaDigitalUK/status/1370309383742185473
https://twitter.com/Tazhys/status/1371881250206679046
https://twitter.com/ThawTarSan3/status/1377504002695254016
https://twitter.com/Twyla54100915/status/1377527323654725636
https://twitter.com/V25022000/status/1376914512725479429
https://twitter.com/Vit69723327/status/1376846374667345922
https://twitter.com/W01fyH/status/1377451953353986053
https://twitter.com/WaiOrtho/status/1377476715556003840
https://twitter.com/Waiian161298/status/1377507842081447936
https://twitter.com/Xxxxx41471542/status/1376932828768829440
https://twitter.com/YaKauk47/status/1376851886981009412
https://twitter.com/YarSu65501381/status/1377508995699646464
https://twitter.com/YingQunSu1/status/1376963946230521861
https://twitter.com/Zabujca997/status/1371397158809784320
https://twitter.com/Zack_gaming7/status/1377466204097441792
https://twitter.com/ZayYar07281465/status/1377283812967600134
https://twitter.com/Zayar88224304/status/1377581442931298306
https://twitter.com/ZoanZonoa/status/1376874020277133313
https://twitter.com/aarashaaria/status/1376873295639949315
https://twitter.com/activeboyz1990/status/1377228831694655489
https://twitter.com/adel81764908/status/1377549585057423363
https://twitter.com/afrash/status/1369943509839585281
https://twitter.com/ajayajayid/status/1374250782011256837
https://twitter.com/aldoscar_oscar/status/1377318204477964290
https://twitter.com/anushka_wije/status/1370919655980691461
https://twitter.com/arvinvxiii/status/1377549061314772998
https://twitter.com/aung90449662/status/1377462661927952388
https://twitter.com/azim56828133/status/1377551649372258306
https://twitter.com/badluckbillyxo/status/1371850435015884807
https://twitter.com/barbadoslive/status/1370835424571179012
https://twitter.com/boyarmy1234/status/1377459765933006850
@ -195,6 +219,7 @@ https://twitter.com/jaysonm76681877/status/1376793641474260994
https://twitter.com/jef43477408/status/1377262260272439301
https://twitter.com/jhnmchlcrpx/status/1377245823180804097
https://twitter.com/kanaan94901823/status/1377247977803251712
https://twitter.com/khet_win/status/1377468267539935233
https://twitter.com/kikidrilla/status/1372335070158204930
https://twitter.com/kukuhtun/status/1377224548454526978
https://twitter.com/kyawlinoo2008/status/1377158030924476421
@ -203,6 +228,7 @@ https://twitter.com/libyeehor/status/1376858783650086914
https://twitter.com/mazoghby/status/1371803600096202756
https://twitter.com/mikeeowino/status/1375217393354612745
https://twitter.com/minn_soe/status/1377206706900332550
https://twitter.com/myatthu19950274/status/1377506766200573955
https://twitter.com/n_wuit/status/1376737743619813382
https://twitter.com/nandha58379893/status/1376803094453964800
https://twitter.com/nearby_Thailand/status/1375630256543985666
@ -210,10 +236,13 @@ https://twitter.com/news_scraper/status/1370141469613391875
https://twitter.com/nidusha6/status/1377278946945990661
https://twitter.com/nii_ayi_gh/status/1377364316698083338
https://twitter.com/ninjaismyidol12/status/1375869047657619456
https://twitter.com/onethreenineon2/status/1377541859241644042
https://twitter.com/open_teck/status/1377209508976594948
https://twitter.com/owuru/status/1370256834062381056
https://twitter.com/parasyte_x/status/1377532238997254144
https://twitter.com/pbrito1/status/1370109221572902918
https://twitter.com/phwaysan1/status/1377088458615881729
https://twitter.com/qniInC1x2OFEAgN/status/1377557102453956612
https://twitter.com/qxip/status/1370122122450853893
https://twitter.com/qxpuSskf3TL3PLD/status/1376947809757372416
https://twitter.com/raghu83283525/status/1377305204429791233
@ -226,6 +255,7 @@ https://twitter.com/sithuky57429922/status/1377165979633938436
https://twitter.com/sy_angelyuna/status/1377173738085474307
https://twitter.com/sysdotini/status/1373351911060078592
https://twitter.com/trongkimtran/status/1376771803389915136
https://twitter.com/winzawmoemoe1/status/1377558724198363140
https://twitter.com/wyliehorn/status/1370118398114476032
https://twitter.com/xubbers/status/1375092922975145988
https://twitter.com/y2pNVkQPT26gvTC/status/1377187578583994368

View File

@ -9,10 +9,12 @@
- Bonvolu vidi [INSTRUCTION.md](../../INSTRUCTION.md) por dosiera celo kaj formato specifoj.
- [is_listed_cf(), is_cloudflare_cached()](../../tool/example.json.is_cloudflare.php)
-----
# Cloudflare users domain list
- See [INSTRUCTION.md](../../INSTRUCTION.md) for file purpose and format specifications.
- See [INSTRUCTION.md](../../INSTRUCTION.md) for file purpose and format specifications.
- [is_listed_cf(), is_cloudflare_cached()](../../tool/example.json.is_cloudflare.php)

View File

@ -0,0 +1,56 @@
<?php
/*
How to use json file
1. Download .json files: https://codeberg.org/crimeflare/cloudflare-tor/src/branch/master/cloudflare_users/domains
2. Edit path: "/path/to/jsonfiles/"
*/
/*
is_listed_cf(string Domain)
return
[false, false]: file error
[true, true]: is cloudflare
[true, false]: not listed
*/
function is_listed_cf($domain)
{
if (!in_array(substr($domain, 0, 1), ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'], true)) {
return [false, false];
}
$got = @json_decode(file_get_contents('/path/to/jsonfiles/cloudflare_' . $domain[0] . '.json'), true);
if (!is_array($got)) {
return [false, false];
}
return isset($got[$domain]) ? [true, true] : [true, false];
}
/*
is_cloudflare_cached(string Domain)
return
true: is cloudflare
false: not listed
*/
function is_cloudflare_cached($f)
{
global $tmpCacheCFlist;
if (!isset($tmpCacheCFlist)) {
$tmpCacheCFlist = [];
}
$d = $f;
//$d = get_domainname($f)[1];
if (isset($tmpCacheCFlist[$d])) {
return $tmpCacheCFlist[$d];
}
$tmpCacheCFlist[$d] = is_listed_cf($d)[1] ? true : false;
return $tmpCacheCFlist[$d];
}
// example
var_dump(is_cloudflare_cached('codeberg.org'));// false

View File

@ -0,0 +1,20 @@
### Find Mastodon Toots & Accounts
- Cloudflare filtered out by default (you can disable it)
- JSON for developers
### Live example
- [Tor](http://qyo4hcmvxiysc6zrxdn6rhofgkroyoygszkljw5izwdqklxfantseiyd.onion/)
- [Clearnet](https://mastodonfind.mooo.com/)
### Code
- [index.php](index.php): Main website to show the result
### Related
- [Mastodon Watch](../mastodonwch/)

179
tool/mastodonfind/index.php Normal file
View File

@ -0,0 +1,179 @@
<?php
header('HTTP/1.1 404 Not Found');
header('Referrer-Policy: no-referrer');
define('NOWTIME_U', gmdate('U'));
$vi_json = $_GET['json']??$_POST['json'];
$vi_query = $_GET['q']??$_POST['q'];
$vi_opt_sm = ($_GET['sm'] == 'a' || $_POST['sm'] == 'a') ? 'a' : 't';
$vi_opt_inclcf = $_GET['cf']??$_POST['cf'];
$vi_opt_inclcf = isset($vi_opt_inclcf) ? true : false;
$vi_opt_limitlg = $_GET['lg']??$_POST['lg'];
if (!preg_match("/^([a-z]{2})$/", $vi_opt_limitlg)) {
$vi_opt_limitlg = '';
}
$vi_opt_timeA = $_GET['tia']??$_POST['tia'];
if (!preg_match("/^2([0-9]{3})\-([0-9]{2})\-([0-9]{2})$/", $vi_opt_timeA)) {
$vi_opt_timeA = '';
} //A->
$vi_opt_timeB = $_GET['tib']??$_POST['tib'];
if (!preg_match("/^2([0-9]{3})\-([0-9]{2})\-([0-9]{2})$/", $vi_opt_timeB)) {
$vi_opt_timeB = '';
} //<-B
$vi_internal_tia = $vi_internal_tib = '';
if ($vi_opt_timeA != '') {
$vi_internal_tia = gmdate('U', strtotime($vi_opt_timeA . ' 00:00:00'));
if ($vi_internal_tia > NOWTIME_U) {
$vi_internal_tia = NOWTIME_U;
}
}
if ($vi_opt_timeB != '') {
$vi_internal_tib = gmdate('U', strtotime($vi_opt_timeB . ' 23:59:59'));
if ($vi_internal_tib > NOWTIME_U) {
$vi_internal_tib = NOWTIME_U;
}
}
if (isset($vi_query)) {
$vi_query = cleanse_str($vi_query);
if (is_attackable_str($vi_query)) {
$vi_query = '';
}
}
$vi_showquery = htmlspecialchars($vi_query, ENT_QUOTES);
$sql_Result = [];
if (strlen($vi_query) >= 2) {
$sqlme = @new mysqli('localhost', 'REDACTED', 'REDACTED', 'REDACTED');
if ($sqlme->connect_errno) {
echo ('DB ERROR TRY AGAIN LATER');
exit;
}
$sql_Query = 'SELECT * FROM REDACTED WHERE ';
$sql_Pcs = [];
$sql_smt = ($vi_opt_sm == 'a') ? 'who' : 'body';
if (!$vi_opt_inclcf) {
$sql_Pcs[] = "iscf = '0' ";
}
if ($vi_opt_limitlg != '') {
$sql_Pcs[] = "lang = '{$vi_opt_limitlg}' ";
}
if ($vi_internal_tia != '') {
$sql_Pcs[] = "`when` >= '{$vi_internal_tia}' ";
}
if ($vi_internal_tib != '') {
$sql_Pcs[] = "`when` <= '{$vi_internal_tib}' ";
}
foreach (explode(' ', $vi_query) as $w) {
if (strlen($w) <= 1) {
continue;
}
if (strpos($w, 'author:') === 0) {
$w = str_replace('author:', '', $w);
if (strlen($w) < 2) {
continue;
}
$sql_Pcs[] = "who LIKE '%{$w}%' ";
continue;
}
if (strpos($w, '-author:') === 0) {
$w = str_replace('-author:', '', $w);
if (strlen($w) < 2) {
continue;
}
$sql_Pcs[] = "who NOT LIKE '%{$w}%' ";
continue;
}
if (strpos($w, '-') === 0) {
$w = str_replace('-', '', $w);
if (strlen($w) < 2) {
continue;
}
$sql_Pcs[] = "{$sql_smt} NOT LIKE '%{$w}%' ";
continue;
}
$sql_Pcs[] = "{$sql_smt} LIKE '%{$w}%' ";
}
if ($result = $sqlme->query($sql_Query . implode('AND ', $sql_Pcs) . ' ORDER BY `when` DESC LIMIT 500;')) {
while ($g = $result->fetch_array()) {
$sql_Result[] = $g;
}
}
$sqlme->close();
}
if (isset($vi_json)) {
header('Content-Type: application/json; charset=utf-8');
$finalRESP = [];
if ($vi_showquery == '') {
$finalRESP = ['method' => ['POST', 'GET'], 'accept_param' => ['q' => ['type' => 'string', 'value' => 'any', 'note' => 'Required'], 'sm' => ['type' => 'string', 'value' => ['a' => 'Account', 't' => 'Toot'], 'note' => 'default is t'], 'cf' => ['type' => 'existence', 'value' => 'any'], 'lg' => ['type' => 'string', 'value' => '2 letter'], 'tia' => ['type' => 'date', 'value' => 'Y-m-d'], 'tib' => ['type' => 'date', 'value' => 'Y-m-d']], 'example' => ['GET' => ['/?json&q=friend', '/?json&cf&lg=en&q=news']]];
} else {
foreach ($sql_Result as $g) {
$finalRESP[] = ['url' => $g['url'], 'who' => $g['who'], 'when' => $g['when'], 'iscf' => $g['iscf'], 'lang' => $g['lang'], 'body' => str_replace('&nbsp;', ' ', $g['body']) ];
}
}
echo (json_encode($finalRESP));
exit;
} else {
header('Content-Type: text/html; charset=UTF-8');
$finalRESP = '';
foreach ($sql_Result as $g) {
$finalRESP.= '<tr><td class="sh"><a href="' . $g['url'] . '" rel="noreferer" target="_blank">' . $g['who'] . '</a>' . ($g['iscf'] ? '&#127785;' : '') . '<br><i>' . humanTiming($g['when']) . ' ago / ' . $g['lang'] . '</i></td><td class="xp">' . htmlspecialchars(htmlspecialchars_decode(str_replace('&nbsp;', ' ', $g['body']), ENT_QUOTES), ENT_QUOTES) . '</td></tr>';
}
$ui_sma = ($vi_opt_sm == 'a') ? ['', ' selected'] : [' selected', ''];
$ui_cfc = ($vi_opt_inclcf) ? ' checked' : '';
$finish = <<<HTMLDATA
<html>
<head>
<title>&#x1F418;</title>
<style>
html{background:#f3f6fa}div#ha{background:#e4e9f0;position:fixed;top:0;left:0;right:0;padding:18px 0;z-index:10}div#ha form{padding:0 20px}div#ub{margin-top:40px;background:#e4e9f0;position:absolute;left:0;right:0}details summary,button[type=submit]{cursor:pointer}form input[name=q],button[type=submit]{font-size:20px}button[type=submit]{background:transparent;border:0}div#mb table{width:80%;border-collapse:collapse}div#mb table tr:nth-child(2n){background:#f8fbff}div#mb td.sh{white-space:nowrap}div#mb td.xp{width:99%;padding:10px 0 10px 20px;word-wrap:anywhere}
</style>
</head>
<body>
<div id="ha">
<form action="./" method="POST">
<input type="text" name="q" size="60" minlength="2" value="{$vi_showquery}" autofocus required>
<button type="submit">&#x1F50E;</button><br>
<details>
<summary>Advanced</summary>
<p>
Search mode: <select name="sm">
<option value="t"{$ui_sma[0]}>Toots</option>
<option value="a"{$ui_sma[1]}>Account</option>
</select><br>
<br><br>
<label><input type="checkbox" name="cf"{$ui_cfc}> Include <a href="https://codeberg.org/crimeflare/cloudflare-tor" target="_blank">Cloudflared Mastodon</a> servers to search result</label><br>
<br><br>
Limit language code: <input type="text" name="lg" size="4" minlength="2" maxlength="2" value="{$vi_opt_limitlg}"> (e.g <i>de</i>)<br>
<br><br>
Limit time range:<br>
<label for="tia">Newer than </label><input type="date" id="tia" name="tia" value="{$vi_opt_timeA}"><br>
<label for="tib">Older than </label><input type="date" id="tib" name="tib" value="{$vi_opt_timeB}"><br>
<br>
<hr>
<ul>
<li> cat pic (search toots about "cat" and "pic")</li>
<li> my friend <b>-</b>enemy <b>-</b>joke (search "my" and "friend" toots but not include "enemy" "joke")</li>
<li> news <b>-author</b>:bot <b>-author</b>:blog (search "news" but not from author named "*bot*" "*blog*")</li>
<li> <b>author</b>:friend@my.site (show only about friend@my.site)</li>
<li> Max limit: 500 search results</li>
</ul>
</p>
</details>
</form>
</div>
<br><br><br><br><br><br><br><br>
<div id="mb">
<table>{$finalRESP}</table>
</div>
<div id="ub">
<ul>
<li> Search: Mastodon public toots & Accounts</li>
<li> API: <a href="./?json">API guide</a></li>
<li> Index: Toots older than 7 months will be removed</li>
<li> Privacy: No collection (search keyword, IP, whatever)</li>
<li> <a href="http://qyo4hcmvxiysc6zrxdn6rhofgkroyoygszkljw5izwdqklxfantseiyd.onion/">Tor</a>
</ul>
</div>
</body>
</html>
HTMLDATA;
}
echo (str_replace("\n", '', $finish));

View File

@ -90,6 +90,10 @@ ym int(6) INDEX
If you want to see this in action: [Onion](http://nomdjgwjvyvlvmkolbyp3rocn2ld7fnlidlt2jjyotn3qqsvzs2gmuyd.onion/social/mastodon/) or [cache page (not in sync)](../../subfiles/shared_on_mastodon.md)
### Related
- [Mastodon Find](../mastodonfind)
### Live API
@ -105,4 +109,4 @@ If you want to see this in action: [Onion](http://nomdjgwjvyvlvmkolbyp3rocn2ld7f
Example:
`curl -x socks5h://127.0.0.1:9050 -G -H "Authorization: Basic c3RvcGNsb3VkZmxhcmU6" "http://-----.onion/mastodon/" -d "who=c" -d "json"`
> `[{"rank":1,"who":"xxx","toots":"xxx"},{"rank":2,...`
> `[{"rank":1,"who":"xxx","toots":"xxx"},{"rank":2,...`