Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kernel: Executables sometimes disappear after a process crashes #13800

Open
Lubrsi opened this issue Apr 25, 2022 · 0 comments
Open

Kernel: Executables sometimes disappear after a process crashes #13800

Lubrsi opened this issue Apr 25, 2022 · 0 comments
Labels
bug Something isn't working

Comments

@Lubrsi
Copy link
Member

Lubrsi commented Apr 25, 2022

For example, I was debugging a UAF in the bytecode optimizer and this happened:

380.899 WebContent(47:47): length: unknown type: -303174163 (0x-12121213)
380.899 WebContent(47:47): ASSERTION FAILED: false
../../Userland/Libraries/LibJS/Bytecode/Op.h:968
380.899 [#0 WebContent(47:47)]: Terminating WebContent(47) due to signal 6
380.907 [#0 FinalizerTask(4:4)]: Backtrace:
0x00000000deadc0de  Kernel::Processor::switch_context(Kernel::Thread*&, Kernel::Thread*&) + 0x383
380.907 [#0 FinalizerTask(4:4)]: Generating coredump for pid: 47
381.036 CrashDaemon(9:9): New coredump file: /tmp/coredump/WebContent_47_1650928417
381.046 SystemServer(6:6): WebContent: binary "/bin/WebContent" does not exist, skipping service.
381.049 SystemServer(6:6): WebContent: binary "/bin/WebContent" does not exist, skipping service.
381.049 SystemServer(6:6): WebContent: binary "/bin/WebContent" does not exist, skipping service.
381.057 SystemServer(6:6): WebContent: binary "/bin/WebContent" does not exist, skipping service.
381.057 SystemServer(6:6): WebContent: binary "/bin/WebContent" does not exist, skipping service

When re-running with Meta/serenity.sh run x86_64, the disk image appears corrupted:

checking existing image
e2fsck 1.45.5 (07-Jan-2020)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Entry 'WebContent' in /bin (25153) has deleted/unused inode 25254.  Clear? yes

Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Block bitmap differences:  -(34272--34303) -164613 -(197683--197806) -(231122--231185) -(394096--394111) -(427136--427263) -(501575--501590)
Fix? yes

Free blocks count wrong for group #1 (22122, counted=22154).
Fix? yes

Free blocks count wrong for group #5 (20265, counted=20266).
Fix? yes

Free blocks count wrong for group #6 (22071, counted=22195).
Fix? yes

Free blocks count wrong for group #7 (18062, counted=18126).
Fix? yes

Free blocks count wrong for group #12 (18625, counted=18641).
Fix? yes

Free blocks count wrong for group #13 (23073, counted=23201).
Fix? yes

Free blocks count wrong for group #15 (2868, counted=2884).
Fix? yes

Free blocks count wrong (315892, counted=316273).
Fix? yes


_disk_image: ***** FILESYSTEM WAS MODIFIED *****
_disk_image: 11498/67072 files (6.2% non-contiguous), 189804/506077 blocks
done
@Lubrsi Lubrsi added the bug Something isn't working label Apr 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant