From 3191f8a72d726ffbad8dfb1f354f2efffabf1ffc Mon Sep 17 00:00:00 2001 From: anatawa12 Date: Thu, 21 May 2026 08:50:43 +0900 Subject: [PATCH] Merge commit from fork This issue was originally reported by sururu-k as part of a series of ai slop public pull requests. Although the original pull request was closed as ai slop, I later confirmed one described a real security issue. --- packages/backend/src/core/AnnouncementService.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/backend/src/core/AnnouncementService.ts b/packages/backend/src/core/AnnouncementService.ts index f750ca212a..b97383b994 100644 --- a/packages/backend/src/core/AnnouncementService.ts +++ b/packages/backend/src/core/AnnouncementService.ts @@ -182,11 +182,12 @@ export class AnnouncementService { @bindThis public async getAnnouncement(announcementId: MiAnnouncement['id'], me: MiUser | null): Promise> { const announcement = await this.announcementsRepository.findOneByOrFail({ id: announcementId }); - if (me) { - if (announcement.userId && announcement.userId !== me.id) { - throw new EntityNotFoundError(this.announcementsRepository.metadata.target, { id: announcementId }); - } + if (announcement.userId && (me == null || announcement.userId !== me.id)) { + throw new EntityNotFoundError(this.announcementsRepository.metadata.target, { id: announcementId }); + } + + if (me) { const read = await this.announcementReadsRepository.findOneBy({ announcementId: announcement.id, userId: me.id,