Commit Graph

3075 Commits

Author SHA1 Message Date
rectcoordsystem 360d71278a
fix(backend): lint and typecheck 2024-11-20 19:17:25 -05:00
rectcoordsystem 663c06be00
Apply suggestions from code review
Co-authored-by: anatawa12 <anatawa12@icloud.com>
2024-11-20 19:17:25 -05:00
rectcoordsystem 7ccccf5545
fix(backend): allow accessing private IP when testing 2024-11-20 19:17:25 -05:00
rectcoordsystem f36f4b5398
fix(backend): check target IP before sending HTTP request 2024-11-20 19:17:25 -05:00
Julia Johannesen cc4e99fdde
fix: Try using `CacheService` to avoid excess db lookups
This isn't perfect, theoretically if some massive number of users
blocked the user making this request the set lookup could take a long
amount of time, but eh, it works, and that scenario is highly unlikely.
2024-11-20 19:17:25 -05:00
Julia Johannesen 5764fa55cb
fix: primitives 25-33: proper local instance checks 2024-11-20 19:17:25 -05:00
Julia Johannesen 74565f67f7
fix: primitives 21, 22, and 23: reuse resolver
This also increases the default `recursionLimit` for `Resolver`, as it
theoretically will go higher that it previously would and could possibly
fail on non-malicious collection activities.
2024-11-20 19:17:25 -05:00
Julia Johannesen 408e782507
fix: primitive 19 & 20: respect blocks and hide more
Ideally, the user property should also be hidden (as leaving it in leaks
information slightly), but given the schema of the note endpoint, I
don't think that would be possible without introducing some kind of
"ghost" user, who is attributed for posts by users who have you blocked.
2024-11-20 19:17:25 -05:00
Julia Johannesen cbf8cc376e
fix: primitive 18: `ap/get` bypasses access checks
One might argue that we could make this one actually preform access
checks against the returned activity object, but I feel like that's a
lot more work than just restricting it to administrators, since, to me
at least, it seems more like a debugging tool than anything else.
2024-11-20 19:17:25 -05:00
Julia Johannesen c04f344049
fix: primitive 13: check attribution against actor in notes 2024-11-20 19:17:25 -05:00
Julia Johannesen b9080da75d
fix: code style for primitive 17 2024-11-20 19:17:24 -05:00
Laura Hausmann 4d925fc086
fix: primitive 17: note same-origin identifier validation can be bypassed by wrapping the id in an array 2024-11-20 19:17:24 -05:00
Laura Hausmann b74e2e9167
fix: primitive 16: improper same-origin validation for user uri and url 2024-11-20 19:17:24 -05:00
Laura Hausmann ebea1a2962
fix: primitive 15: improper same-origin validation for note uri and url 2024-11-20 19:17:24 -05:00
Julia Johannesen 4c432c07cb
fix: code style for primitive 14 2024-11-20 19:17:24 -05:00
Laura Hausmann 322b3b677f
fix: primitive 14: improper validation of outbox, followers, following & shared inbox collections 2024-11-20 19:17:24 -05:00
Julia Johannesen 1c7e05ce9e
fix: primitive 7 & 12: prevent poll spoofing 2024-11-20 19:17:24 -05:00
Laura Hausmann 9ab25ede28
fix: primitives 9, 10 & 11: http signature validation doesn't enforce required headers or specify auth header name 2024-11-20 19:17:24 -05:00
Laura Hausmann 174dfb83d0
fix: primitive 6: reject anonymous objects that were fetched by their id 2024-11-20 19:17:24 -05:00
Laura Hausmann ad8e8793c7
fix: primitives 5 & 8: reject activities with non-string identifiers 2024-11-20 19:17:24 -05:00
Laura Hausmann 1e14612f0e
fix: primitive 4: missing same-origin identifier validation of collection-wrapped activities 2024-11-20 19:17:24 -05:00
Laura Hausmann 9090b745e6
fix: primitive 3: validation of non-final url 2024-11-20 19:17:24 -05:00
Laura Hausmann d883934826
fix: primitive 2: acceptance of cross-origin alternate links 2024-11-20 19:17:23 -05:00
Julia Johannesen fb54546573
Fix linter error in emojis endpoint 2024-11-20 01:17:24 -05:00
Julia 9e0b759197 merge: Bump develop version (!757)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/757
2024-11-20 05:56:55 +00:00
Hazelnoot d150e92f41 prevent DoS from spammed media proxy requests 2024-11-19 23:31:59 -05:00
dakkar 482538c7f8 merge: make emoji categories and names case insensitive. (!746)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/746

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-11-17 13:22:39 +00:00
Hazelnoot 1bfb0dc395 merge: check harder for connectibility (!737)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/737

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2024-11-17 00:40:52 +00:00
Hazelnoot da2dfee0a8 merge: Remove check to prevent admin reporting (Fixes #757) (!727)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/727

Closes #757

Approved-by: Julia <julia@insertdomain.name>
Approved-by: Marie <github@yuugi.dev>
Approved-by: Hazelnoot <acomputerdog@gmail.com>
2024-11-17 00:39:08 +00:00
piuvas eaad96aae3
edit query 2024-11-15 13:40:53 -03:00
Caramel 03559156b9 Improve performance of notes/following API 2024-11-09 00:32:03 +01:00
dakkar 9fe5dc679a check harder for connectibility
`allSettled` does not throw if a promise is rejected, so
`check_connect` never actually failed
2024-11-05 14:21:58 +00:00
Kio! 8477909af2 Update report-abuse.ts 2024-11-03 19:50:25 +00:00
Julia e783359aca merge: Revert "Experimental: dont mark backfetched notes as silent" (!703)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/703

Approved-by: Julia <julia@insertdomain.name>
Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2024-11-03 19:39:00 +00:00
Hazelnoot ddf572c22f fix lint errors in FollowingEntityService.ts 2024-11-02 17:43:11 -04:00
Hazel K 37fd454f70 factor out shared code 2024-11-02 17:39:16 -04:00
Hazel K 3a72bf453a respect following privacy settings 2024-11-02 17:39:16 -04:00
Hazel K 65d81a4ae2 Revert "fix incorrect populated object in followers endpoint"
This reverts commit 7b9473bf4c0b55facede0e1d1e33297d14184110.
2024-11-02 17:39:16 -04:00
Hazel K 8f0df1f01c check for blocks in following / followers endpoints 2024-11-02 17:39:16 -04:00
Hazel K c566fa1f36 require auth for followers & following endpoints 2024-11-02 17:39:16 -04:00
Marie b8b077cbad chore: replace recaptcha with frc 2024-11-02 11:02:13 +00:00
Marie d786e96c2b
upd: add FriendlyCaptcha as a captcha solution
FriendlyCaptcha is a german captcha solution which is GDPR compliant and has a non-commerical free license
2024-11-02 02:20:35 +01:00
Hazelnoot ade801ec58 check token permissions in admin/accounts/create.ts 2024-11-01 10:12:28 -04:00
Hazelnoot 37ff2bb0ca always approve the first / root user 2024-11-01 09:29:40 -04:00
Hazelnoot f36a1a5701 allow admins to create approved users 2024-11-01 09:29:40 -04:00
Julia 1520bc1715 merge: Split character limits between local and remote notes (resolves #723) (!669)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/669

Closes #723

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Julia <julia@insertdomain.name>
2024-10-29 03:04:25 +00:00
dakkar 276b30bdc0 merge: Collapse user activity, files, and listenbrainz on mobile (resolves #747) (!718)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/718

Closes #747

Approved-by: Marie <github@yuugi.dev>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-10-27 12:12:30 +00:00
dakkar d72c40d157 merge: fix race conditions in check_connect.js (!715)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/715

Approved-by: Marie <github@yuugi.dev>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-10-27 12:05:48 +00:00
Hazelnoot a541eaba5e fix test errors 2024-10-26 17:34:42 -04:00
Hazelnoot d2a4d6d9e0 fix lint errors in home.vue / index.listenbrainz.vue 2024-10-26 12:58:07 -04:00
Hazelnoot 27b502fab5 normalize re-fetch logic between InboxProcessorService and ActivityPubServerService 2024-10-26 10:40:15 -04:00
Hazelnoot c0a5955e0a log key rotation 2024-10-26 10:40:15 -04:00
Hazelnoot 5eb9a263e2 fix public key re-fetch logic 2024-10-26 10:40:15 -04:00
Hazelnoot 78a75171c2 remove cached public keys after deletion 2024-10-26 10:40:15 -04:00
Hazelnoot ca1cdc4ea3 fix poll option limit in masto API 2024-10-26 10:38:29 -04:00
Hazelnoot c5d9bde43f expose CW limit to frontend 2024-10-26 10:37:43 -04:00
Hazelnoot 01e98c75ab add separate limits for CW length 2024-10-26 10:04:23 -04:00
Hazelnoot 10d3d9f382 fix unit tests 2024-10-26 09:49:28 -04:00
Hazel K a6befca845 clarify comment about MAX_NOTE_TEXT_LENGTH in tests 2024-10-26 09:49:28 -04:00
Hazel K 67185a5d5d fix UUID format 2024-10-26 09:49:28 -04:00
Hazel K 560ee43dcf separate character limits for local and remote notes 2024-10-26 09:49:28 -04:00
Hazelnoot 524ddb9677 fix race conditions in check_connect.js 2024-10-26 08:57:26 -04:00
Hazelnoot 9562a830ed merge: Merge upstream security advisary (!707)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/707

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Hazelnoot <acomputerdog@gmail.com>
2024-10-25 15:22:21 +00:00
Hazelnoot 57ce32d44f merge: fix: return getFromDb directly when fanoutTimeline is not enabled (!709)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/709

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Hazelnoot <acomputerdog@gmail.com>
2024-10-25 15:20:06 +00:00
dakkar d7ffc0be62 MR !710 had missed `renderUpNote` 2024-10-24 13:47:54 +01:00
dakkar ff220bd372 Merge branch 'develop' into 'fix/user-lookup-capitalization'
# Conflicts:
#   packages/backend/src/core/MfmService.ts
2024-10-24 08:14:53 +00:00
dakkar 4fed355592 merge: fix: send MFM payload for notes that don't contain advanced MFM (!710)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/710

Closes #647

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-10-24 08:10:46 +00:00
Laura Hausmann aae7fff494
fix: make sure mentions of local users get rendered correctly during AP delivery (resolves #645) 2024-10-24 05:51:30 +02:00
Laura Hausmann 724aff6e4e
fix: make sure outgoing remote mentions get resolved correctly if referenced with non-canonical casing (resolves #646) 2024-10-24 05:45:22 +02:00
Laura Hausmann d52f4748f2
fix: send MFM payload for notes that don't contain advanced MFM (resolves #647) 2024-10-24 05:40:17 +02:00
Lhc_fl 67f977f4ff
fix: return getfromdb when FanoutTimeline is not enabled 2024-10-23 23:14:46 +08:00
饺子w (Yumechi) e05420a92d
Merge commit from fork
[ghsa-gq5q-c77c-v236](https://github.com/misskey-dev/misskey/security/advisories/ghsa-gq5q-c77c-v236)

Signed-off-by: eternal-flame-AD <yume@yumechi.jp>
2024-10-22 22:30:17 +02:00
dakkar 60be692a0a merge: fix: should use invite limit cycle to calculate invite/limit (!706)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/706

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-10-22 14:07:17 +00:00
Lhc_fl 6aaeda13b9
fix: should use invite limit cycle to calculate invite/limit 2024-10-22 18:48:24 +08:00
Hazelnoot 04654b2f84 add "followers" tab to following feed 2024-10-21 17:55:06 -04:00
Hazelnoot 053b47d78a return error when calling following feed with both includeReplies and filesOnly 2024-10-21 17:55:06 -04:00
Hazelnoot 6430a191f7 fix duplicate users in the following feed 2024-10-21 17:55:06 -04:00
dakkar dfee4108f9 Revert "Experimental: dont mark backfetched notes as silent"
This reverts commit 1410f8d501.
2024-10-21 14:10:54 +01:00
dakkar 4ccc0c4b1e merge: Optimizations to InternalStorageService (resolves #753) (!694)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/694

Closes #753

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2024-10-20 15:48:46 +00:00
Marie 65ac5fef46
fix: default sensitive not letting users unmark files 2024-10-20 11:04:48 +02:00
Hazelnoot fcd2c93a19 ensure that "thumbnail stored" / "web stored" messages only appear after success 2024-10-20 00:13:07 -04:00
Hazelnoot 7aee3c1617 fix comment typo in InternalStorageService.ts 2024-10-20 00:11:14 -04:00
Hazelnoot b1d9314d6e pre-create the `files` directory to reduce IO operations 2024-10-20 00:10:11 -04:00
Hazelnoot 2deb64486b use async IO for InternalStorageService 2024-10-20 00:10:10 -04:00
dakkar 2a4c91efcc Merge branch 'develop' into feature/2024.9.0 2024-10-18 22:09:11 +01:00
Marie 290bfd2075 merge: Allow logged in users to refresh polls (!686)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/686

Closes #743

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-10-18 21:03:07 +00:00
dakkar 52e291af67 Merge branch 'develop' into feature/2024.9.0 2024-10-18 22:00:07 +01:00
Marie fea7889e0c
upd: add recommended checks 2024-10-17 21:56:43 +02:00
Marie 5152192e09
fix: add missing type 2024-10-17 20:22:16 +02:00
Marie 42530b5a39
upd: add additional check from delete endpoint 2024-10-17 20:15:20 +02:00
Marie 360a127ad7
chore: indent 2024-10-17 20:14:25 +02:00
Marie 1d9cb4fad9
upd: add decline endpoint and free up username on decline 2024-10-17 20:11:10 +02:00
Hazelnoot fbe6b31878 fix eslint errors in all projects due to over-including files 2024-10-16 10:30:38 -04:00
Hazelnoot 2c8af72168 fix formatting in boot.js 2024-10-16 09:15:03 -04:00
Hazelnoot 0c2e113e8e update fast-xml-parser to patch security issue (DoS) 2024-10-15 22:03:42 -04:00
Hazelnoot 1a9f2f84b3 fix linting and type checks in all packages 2024-10-15 21:41:36 -04:00
Hazelnoot b5a1c54d65 fix lint errors in backend unit tests 2024-10-15 21:40:20 -04:00
Hazelnoot 7431866d86 fix locales versioning in backend client 2024-10-15 21:40:20 -04:00
Hazelnoot 9b06347882 fix TS errors in NoteCreateService / NoteEditService 2024-10-15 21:31:34 -04:00
Marie dedb24fe74 chore: change permission kind 2024-10-15 18:21:09 -04:00