Comments (13)
All of the structures need to match in size and members (struct malloc_state, struct malloc_par):
http://code.metager.de/source/xref/gnu/glibc/malloc/malloc.c#1686
from libheap.
Hi @3xp10it
If you try the latest git checkout it should work on glibc 2.23/2.24/2.25 on Ubuntu now.
from libheap.
Hi cloudburst,
In the It is currently tested and known working on
section of the README, the latest compatible libc on Ubuntu seems to be v2.23
on 16.04
. Does it need to be updated?
from libheap.
The code supports up to glibc 2.25 which is the latest released. The reason why I have not updated the README is I have not personally tested anything newer than 16.04 on Ubuntu.
If you want to use a different glibc just set the version in the config:
https://github.com/cloudburst/libheap/blob/master/libheap/libheap.cfg#L2
So it should work fine on Ubuntu 16.10 and 17.04, if not please let me know.
from libheap.
I don't think libc-2.24
on Ubuntu 16.10
works
from libheap.
I'll take a look then, but 2.24 on Fedora 25 worked fine for me so I'm not aware of any differences on 16.10
from libheap.
Can you please give the Ubuntu 64 bit version a try?
from libheap.
Sure, let me setup a VM and try
from libheap.
It is working fine on my setup. Are you getting any specific errors?
bash$ apt-cache policy libc6
libc6:
Installed: 2.24-3ubuntu2
bash$ apt-cache policy gdb
gdb:
Installed: 7.11.90.20161005-0ubuntu1
bash$ cat .local/lib/python3.5/site-packages/libheap/libheap.cfg
[Glibc]
version = 2.24
bash$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.10
Release: 16.10
Codename: yakkety
bash$ cat .gdbinit
source /opt/pwndbg/gdbinit.py
python import sys
python sys.path.append('~/.local/lib/python3.5/site-packages/')
python from libheap import *
bash$ sudo gdb -q -p `pidof gnome-calculator`
pwndbg>
pwndbg> heap
Arena(s) found:
arena @ 0x7f6dbb49cb00
arena @ 0x7f6d88000020
arena @ 0x7f6d94000020
arena @ 0x7f6d90000020
arena @ 0x7f6d98000020
arena @ 0x7f6da4000020
arena @ 0x7f6da0000020
arena @ 0x7f6da8000020
pwndbg> heapls 0x7f6d90000020
ADDR SIZE STATUS
sbrk_base 0x7f6d900008b0
chunk 0x7f6d900008b0 0xd20 (F) FD 0x7f6d90000078 BK 0x7f6d90000078 (LC)
chunk 0x7f6d900015d0 0x1060 (inuse)
chunk 0x7f6d90002630 0x1f9d0 (top)
sbrk_end 0x7f6d900228b0
from libheap.
Extremely sorry. I changed the libheap.cfg
in the cloned repository and reinstalled libheap
. However, I incorrectly assumed that it would change the copy of libheap.cfg
used by the module residing at .local/lib/python3.5/site-packages/libheap/libheap.cfg
. It's working now.
from libheap.
Ah ok. I think if you use the --upgrade
pip flag maybe it would copy over the .cfg from the cloned repository like you were expecting. But I'm not sure.
Sorry, I want to add autodetection of glibc version to automatically set that config file properly but I just have not had time to.
from libheap.
Does libheap
support libc-2.24, 32 bit
at the moment?
from libheap.
Yes it should, I've only tested 32bit support on 2.23 but it should work fine on 2.24. There are basically no major differences.
from libheap.
Related Issues (20)
- problem when installed in virtualenv HOT 1
- Unable to import from gdb HOT 1
- Lots of Python runtime error HOT 3
- Compatibility problems with gdb.Value HOT 7
- where is the definition of c_none, c_title, c_header? HOT 2
- Colorful print issue with peda HOT 3
- ImportError: No module named pyptmalloc HOT 4
- libheap fails to load any heap status HOT 3
- gdb.error 'Cannot find thread-local storage' HOT 18
- ERROR - Run command HOT 2
- Exception HOT 1
- Python Exception <class 'AttributeError'> HOT 2
- heap.png issue
- Infinite Loop when Double Free
- How can use it in Kali 2.0-64bit? HOT 1
- Which package install on archlinux instead of libc6-dbg HOT 1
- Python Exception <class 'AttributeError'> 'NoneType' object has no attribute 'address': HOT 2
- heap.png how to extend? HOT 5
- sbrk_base is the same as sbrk_end HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libheap.