Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book
Ta książka sama czyta…Twój filesystem
W skrócie otworzenie książki w formacie epub umożliwiło m.in. zdalne odczytywanie plików z filesystemu ofiary. Komunikacja z serwerem została w tym przypadku zorganizowana za pomocą websocketów (!).
Websockety w epub? Spokojna głowa – są i gorsze rzeczy – javascript czy Flash (!):
EPUB 3 supports the object element for use with arbitrary embedded executables that are not natively supported in EPUB 3 reading systems. A common use case would be to include proprietary applets or Adobe Flash applications.
Jak odczytywać plik z filesystemu? Z pomocą przychodzi tutaj np. podatność XXE. Format epub to spakowane m.in. XML-e które są parsowane w momencie otwierania książki:
Archive: book.epub Length Date Time Name --------- ---------- ----- ---- 20 04-09-2014 15:41 mimetype 2189 04-09-2014 15:41 toc.ncx 39962 04-09-2014 15:41 OEBPS/chapter-001-chapter-i.html 41745 04-09-2014 15:41 OEBPS/chapter-002-chapter-ii.html 684 04-09-2014 15:41 OEBPS/title-page.html 557 04-09-2014 15:41 OEBPS/front-cover.html 42220 04-09-2014 15:41 OEBPS/chapter-003-chapter-iii.html 1185 04-09-2014 15:41 OEBPS/copyright.html 884 04-09-2014 15:41 OEBPS/table-of-contents.html 234790 04-09-2014 15:41 OEBPS/assets/pressbooks-promo.png 33684 04-09-2014 15:41 OEBPS/assets/MedulaOne-Regular.ttf 244146 04-09-2014 15:41 OEBPS/assets/themetamorphosis_1200x1600.jpg 661 04-09-2014 15:41 OEBPS/pressbooks-promo.html 27328 04-09-2014 15:41 OEBPS/jackson.css 3494 04-09-2014 15:41 book.opf 240 04-09-2014 15:41 META-INF/container.xml 157 04-09-2014 15:41 META-INF/com.apple.ibooks.display-options.xml --------- ------- 673946 17 files
Wystarczy wiec użyć encji zewnętrznej i wio, możemy odczytywać lokalne pliki – wystarczy tylko mieć tego typu problem na czytniku epubów – a tych nie brakuje…
Jeśli to nie działa, można i za pomocą JavaScriptu – jak pokazano na przykładzie applowego iBooks:
–ms
Próbowałem zrobić testowy epub na PocketBook który by zawierał typowy html-owym formularzem z polem tekstowym oraz przyciskiem, po kliknięciu którego miało wypełniać się pole tekstowe. O ile na komputerze to mi działało, to na czytniku niestety nie. Marzyła mi się interaktywna książka, ale bardziej niż paragrafowa. Może ktoś ma jakieś doświadczenie w tym temacie?
Pozdrawiam
Jak chcesz interaktywności, to niestety tylko albo Twine albo Inform7. Zwłaszcza że wkrótche js będzie zablokowany ze względu na takie podatności jak ta z opisu.
Zresztą takie podatności to nic nowego – we wczesnych latach 2000 były podatności w bibliotekach dekodujących obrazki (albo JPEG, albo wczesny PNG, pewny nie jestem) umożliwiające zrobienie wirusa w obrazku.
Czy jest jakiś powód dla którego teraz wszystko dostaje obsługę JS, Flesha, itd? FB2, epub, svg. Pliki, który to na dobrą sprawę nie jest potrzebne.
wygoda usera :P
chec dokopania Amazonowi, nie ma innego powodu
Porażka. W sensie, przeczytałem title w sposób „Ta książka sama się czyta” i myślałem, że chcecie polecić jakąś uber-pro książkę do poczytania, a tu jakieś emacsem przez filesystem ;p