Skip to content

linux.mountinfo.MountInfo: broken on kernel 6.8+ #1187

Description

@ptrcnull

Describe the bug
The mnt_namespace.list field got removed in kernel version 6.8, replaced with an rb-tree at mnt_namespace.mounts

Context
Volatility Version: 2.7.1 ( ac5769c )
Operating System: Linux
Python Version: 3.12.2
Suspected Operating System: Ubuntu 24.10
Command: vol linux.mountinfo

To Reproduce
Steps to reproduce the behavior:

  1. Acquire a memory dump of Ubuntu 24.10, kernel 6.8 or newer
  2. Extract symbols from the kernel, applying patch from fs_struct type is not converted correctly dwarf2json#57 (comment) to dwarf2json
  3. Try to use linux.mountinfo

Expected behavior
Mounts are getting printed

Example output

Traceback (most recent call last):
  File "/home/patrycja/Downloads/volatility3/vol.py", line 10, in <module>
    volatility3.cli.main()
  File "/home/patrycja/Downloads/volatility3/volatility3/cli/__init__.py", line 877, in main
    CommandLine().run()
  File "/home/patrycja/Downloads/volatility3/volatility3/cli/__init__.py", line 469, in run
    renderer.render(grid)
  File "/home/patrycja/Downloads/volatility3/volatility3/cli/text_renderer.py", line 198, in render
    grid.populate(visitor, outfd)
  File "/home/patrycja/Downloads/volatility3/volatility3/framework/renderers/__init__.py", line 245, in populate
    for level, item in self._generator:
  File "/home/patrycja/Downloads/volatility3/volatility3/framework/plugins/linux/mountinfo.py", line 191, in _generator
    for task, mnt, mnt_ns_id in self._get_tasks_mountpoints(
  File "/home/patrycja/Downloads/volatility3/volatility3/framework/plugins/linux/mountinfo.py", line 170, in _get_tasks_mountpoints
    for mount in mnt_namespace.get_mount_points():
  File "/home/patrycja/Downloads/volatility3/volatility3/framework/symbols/linux/extensions/__init__.py", line 1305, in get_mount_points
    for mount in self.list.to_list(mnt_type, "mnt_list"):
                 ^^^^^^^^^
  File "/home/patrycja/Downloads/volatility3/volatility3/framework/objects/__init__.py", line 971, in __getattr__
    raise AttributeError(
AttributeError: StructType has no attribute: symbol_table_name1!mnt_namespace.list

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions