- Pdf Password Remover 3.0 Crack, Serial & Keygen
- 301 Ranker Pro v1.0 Crack Full Version With Keygen Free
- King Tools V1.0 Full Cracked With Keygen Free Download
- AnyUnlock – iPhone Password Unlocker v1.0.0 Patched
- SINEC PNI Basic V1.0 Update 1 Software Download
- Password Cracker v4.32 - AfterDawn - Software downloads
- Tipard Windows Password Reset Ultimate v1.0.12 Final + Patch
- Tally Password Recovery Tool V1 0 Crack Free Download
- Download Facebook Password Dump v8.0 (freeware
- RS Email Verifier v2.77 Enterprise Cracked
Facebook Hacker V13 Password
The Lookalike The Movie Download. Software Download - V1 Golf Academy. In addition, this software provides two simple solutions for you to reset your Windows password within clicks. It's best if you avoid using common keywords when searching for Aim Password Recovery V1.0 By At4re.
Artoonix V1.0 And V1.1 Patch Archives Team
AnyUnlock - iPhone Password Unlocker v1.0.0 Patched view. This software is able to crack Yahoo mail password in 3 steps. Gmail Password Dump is the command-line tool to instantly recover your lost gmail password from various Google applications as well as popular web browsers and messengers. To create more accurate search results for Imageview V1.0 try to exclude using commonly used keywords such as: crack, download, serial, keygen, torrent, warez, etc.
Serial number samFix Tool V1.3 Full Crack Work Without Activation
In the example below, we created the email address [email protected][HOST] with "password" as the password. Facebook Hacker V1.9 With Activator.exe Free Download our website. How to Reset Password Quick Guide you could try these out. It is very handy tool not only for for Penetration testers but also for Forensic investigators.
Free Yahoo Password Hacker Downloads
Join our community just now to flow with the file E-mail Password Cracker V and make our shared file collection even more complete and exciting. Patch, developed and shared by vposy from China on 2020.10.01. We will send an account activation link to the email address you provide, so please make sure to use a valid address. Key Tool is an application for windows computer which allow to Remove Mi Cloud, Frp Lock, Reset Userdata, Unlock, Test Point, ARB UBL, Softbrick, Asus Frp, SPRD Frp, Factory Reset.
Registration key free Download Password Recovery Software
I Forgot My Windows 7 Password! This patch includes an additional country with three new cities to drive in, several new, and smaller roads in Central Europe. This tool is very easy to use, this tool is a checker for google mail service only what you need to have is a email and password separated by commas. SData [USB OR SD Card Space Expanding] Tool.
Hack download Free Windows Password, Network, Security Tools
Xentry Developer keyGen 1.0 is Best keygen to Active Star Diagnosis xentry, Star Diagnosis Xentry Keymaker V1.0 we will give you download link or send via email, Xentry Developer keyGen is. Mercedes. Download OMH Oppo Userlock Remover Tool v1.1 OMH Oppo Userlock Remover Tool v1.1 New Free Download Userlock Remove a37 a37f r95+ a53 a57 r9s r9+ v7 Setup: Sett. This crack wasn't tested but we're open for feedback! Kon-Boot v1.0 Review & Free Download.
Download Bulk SHA1 Password Cracker v1.0 (freeware
LiveAgent is a fully-featured web-based live chat and helpdesk. Windows password recovery tools recover or reset lost user and administrator passwords for the Windows operating system. By using iCloudin-iCloud bypass software updated version you can also remove the pattern lock of your phone. Copy Download Link (paste this to your browser).
Router Default Password v1.1
SINEC PNI Basic V1.0 Update 1 Software Download. RAT Cracked 888 RAT Private - Cracked Account AccountReaper accounts accounts2 Activated admin Advanced Alabama Alaska Aldi v2 ALFA alibaba email password. Password change is not supported for devices with RUGGEDCOM ROS V5.3. Required fields are marked * Name * Email * Website.
|1||Smart Key Tool V1.0.2 Full Cracked Download Free||15%|
|2||Hack Yahoo! password online: FREE methods of hackers||54%|
|3||Aim Password Recovery V1.0 By At4re||48%|
|4||Download Gmail Password Dump v6.0 (freeware)||89%|
|5||PassFab Activation Unlocker v184.108.40.206 + Crack||22%|
Passfab Toolkit 220.127.116.11 Cracked [Latest]
License type Freeware 1. Author's homepage Visit the author. Download yahoo mail hack v1.5 serial number generator great post to read. Further, InstagramDownloader helps you download images and photos from Instagram with the click of a button. Email password cracker v1 0 software.
Recuva Pro v1.56 Crack Activator [Keygen + Patch] Free 2020
File Password: mobileteam1 File Size: 52 MB SOPPORT: The Software Runs Smoothly on Windows XP, Windows Vista, Windows 7, Windows 8, Windows 8.1 and Windows 10 (32 bit and 64 bit). InstagramDownloader is a Windows tool to download Instagram images. Office Password Recovery is an "all-in-one" solution for recovering all types of lost or forgotten passwords for Microsoft Word documents, Microsoft Excel spreadsheets, Microsoft Access databases, Microsoft PowerPoint presentations, Microsoft OneNote notebooks and Microsoft Outlook e-mail accounts and personal folders files. Cracked Free Download.
- Gmail Password Dump v6.0 - AfterDawn - Software downloads
- Free Download 007 Facebook Hack V1.0 With Full Cracked
- [Original Software] SMTP Mail Cracker
- Facebook Password Hacking Software - CNET Download
- Download WiFi Password Recovery (portable) v1.0 (open
Tipard Windows Password Reset Ultimate v1.0.12 + Fix
Software] EMail Verifier / Validator. Bugs in hard- or software need to be fixed, and everyone needs to know that they have been fixed. Password Cracker v4.06 27 Sep 2020. Download PatchCleaner for free.
Password Hacking Software - CNET Download
Password Cracker v4.04 18 Sep 2020. Free download with crack, patch, keygen, serial keys these details.
LazyLibrarian, Calibre, Calibre-Web, Booksonic Installation Guide v1.0
If you follow this, please read through the whole thing first. There are some things that should come in a certain order to make life easier. I've tried to call out options where they are available and give some reasoning behind my choices.
I do NOT have all of the answers. And my choices are not always correct for me, let alone for you.
Hopefully coming soon will be some short guides for things you'll encounter after the installation (why won't my audiobooks import, why aren't calibre entries being written, etc.) As well as an inevitable edit of this guide once all of the flaws and shortcomings have been located.
To get started, you need a Linux installation. I'm assuming a plain vanilla install of Debian that you've booted into once, updated packages, and rebooted if necessary. Not sure if it matters, but I'm running it in a VM. Currently giving the system 4GB of RAM, 4 processors, and 70 GB of space, NOT counting space for the library. The RAM only rarely comes into play. The processors almost never come into play. At some point, I'll dial them both down by half or more. The disc space looks kinda ridiculous. In retrospect, 20-30 is probably more than enough, but I'm still figuring our the room for metadata.
(For comparison, I have 28GB of eBooks at the moment, as well as 164 GB of audiobooks. (Note to self: look into that. Database reporting in LazyLibrarian says I only have 624 books and 263 audio. That amount of disk space seems a bit much. Difference between du and df is interesting.))
Information and items to have before you start (* is mandatory, O is optional):
- * -Location of helpers like SABNZB, qbittorrent, etc.
- * -Intended Directory layout. More on this later
- * -IP address and hostname of your library server (this should be statically set, or you may have issues later) (for this document, we are assuming 192.168.1.100 and hostname librarian)
- O -Bot accounts on your favorite IRC servers if you like.
- O -GoodReads account.
- O -Kindle email to device address
Distribution ChoiceI prefer Debian based distros due to simplicity. Usually I go for Ubuntu (because everyone does, it makes it trivial to specific directions). For my library, I went with vanilla Debian. There are some changes in how Ubuntu handles certificates that aren't well documented and that I didn't feel like figuring out. This guide will be based on Debian Buster.
I haven't gotten around yet to playing with Docker. Sometime in the next year, I hope to do that. If you need Docker help, gotta ask someone besides me. This is a guide to putting a library on (virtual) metal.
Required additional packages
- git (For installing/updating.)
- xvfb (Required to do a few things with calibre. Most importantly, this is required if you didn't install a gui on your system)
- python3-pip (Not every python package is prepackaged.)
- libnss, python3-openssl, python3-oauth (Agh, lost my notes as to why we need this.)
- openssh-server (unless you are logging in locally or solely through VNC, which I don't recommend.)
- cifs-utils (if you are using a Samba/SMB share. No, it's not recommended, we're doing it anyway.)
- imagemagick, ghostscript, python3-pythonmagick, python3-wand (for generating covers and the like)
- rename (helps manipulate filenames, because ebook and audiobook naming is awful)
- id3v2 and id3tool (helps manipulate id3 tags because ebook and audiobook tagging is awful. Supposedly id3 v1 is sufficient, but you really need the v2 tool. If you are a super miser on space, skip id3tool)
- unzip (another file/metadata helper)
apt install git xvfb python3-pip libnss python3-openssl python3-oauth openssh-server cifs-utils imagemagick rename id3v2 id3tool unzip ffmpeg
You need to set up a user just to run the services. On this setup and for this guide, our user is 'librarian'. I shouldn't have, but did set it up as a normal user, but with a couple of adjustments.
adduser librarian --system --group
Your screen should give you something like this:
Adding system user `librarian' (UID 109) ... Adding new group `librarian' (GID 116) ... Adding new user `librarian' (UID 109) with group `librarian' ...Take note of the UID and GID numbers. We'll come back to that later.
Directory setupYou will need several directories to exist before you begin the installations.
/home/librarian should already exist. If not, make sure you have a 'librarian' user and group. Then create the directory and assign ownership to your librarian user:
chown -R librarian:librarian /home/librarian
If you don't have the usegroup, try creating them again.
Most of the server stuff I want in /srv. If it doesn't exist, /opt is another choice. And back in the day, /uslocal did the trick. This guide uses /srv.
Almost all of my data lies on network mounts. In my case, I use samba/SMB. Unfortunately, calibre does not deal with this very well due to samba/SMB not handling file locks well. So far it's mostly ok if you follow my steps and mounting options. The 'not mostly' part is that every so often you may need to reboot the system.
Filesystems are automounted. You'll have to edit your /etc/fstab file. This is a typical line for my mounts:
//fileserveebooks /mnt/ebooks cifs uid=109,gid=116,credentials=/root/creds,vers=2.1,auto,x-systemd.automount,_netdev,mfsymlinks,nobrl 0 0Fileserver is the smb name for the fileserver where the data resides.
/ebooks is the name of the share.
/mnt/ebooks is the location that our librarian system goes to in order to find those files.
cifs merely specifies the kind of fileshare we are using
uid and gid must match the numbers from your 'librarian' user and group. This will make that user and group own the mount and be able to do just about anything with the files.
credentials=/root/creds specifies the location of your smb username and password. You could put the info here, but this provides a little extra security. The /root/creds file should look like this:
Username=BigBadLibrarian Password=s00p3rsekr1+Or whatever your credentials are.
vers=2.1 may be unneccessary or may need changing depending on your client and server to get the compatibility right.
The next two sections make the mount happen automatically at startup, after the network comes up.
The last two sections "mfsymlinks,nobrl" are two options that minimize the locking problem earlier. It's not perfect, but it's the best that can be done.
What directories do you need?
- /mnt/ebooks/ebooks is where we will put our ebooks (naturally)
- /mnt/ebooks/audiobooks is for audiobooks
- /mnt/ebooks/comics is for comics (which are beyond the scope of this document)
- /mnt/downloads is where our torrent and nzb downloader will place completed downloads. I strongly suggest you place them all here. You can separate them if you wish, but at some point, it's not worth the extra effort of defining things out too finely.
- /mnt/manual_import is where we will place files that we want to bring in manually. Suppose you copy some files from your ereader or a thumb drive. You drop them into this folder. (In my case, the data is on the file server. I mount it as drive N: on my desktop and as /mnt/manual_import on my librarian. Drop it on the desktop, it appears on the server.)
- /home/librarian/logs is where we will keep our logs. This isn't the best location (should be /valog/librarian or similar) but this will do for now.
- /home/librarian/.config/calibre/ is where we will keep some configuration bits, including the user database.
Install calibre-serverLong story short: follow the directions here: https://calibre-ebook.com/download_linux
A stock install should have the correct tools and dependencies already installed.
Run this on the command line: "sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin"
This will fetch the calibre installer and run it, placing items in stock locations (/opt/calibre). This is perfectly acceptable.
Now we need a sample file to use to force calibre to create its database. This command will grab the freely available "Hearts of Darkness" from Project Gutenberg. Feel free to grab whatever you like:
sudo wget http://www.gutenberg.org/ebooks/219.epub.noimages -O heart.epub
Take note of where the file 'heart.pub' is located. I will assume it is in /mnt/manual_import. Whatever directory you choose, life is simpler if you have only one sample epub in there. Next, issue the following command:
sudo xvfb-run calibredb add /mnt/manual_import/* --library-path /mnt/ebooks/ebooks
Change the two directories that start with "/mnt" to your location of heart.epub that you just downloaded and the location where you want your calibre database.
Calibre will run just enough to create a database. The computer should take a few seconds and then come back with "Added book ids: 1". If you look in your library folder, there should be a folder labelled 'Joseph Conrad' (or the author of the book you downloaded) as well as a file named metadata.db.
So now we have our basic database. Some people are leaving us now, as that's a key sticking point. Next step is to verify that the server works. Enter the following command: "sudo calibre-server --port=8180 --enable-local-write /mnt/ebooks/ebooks" Then open up a browser and go to "http://192.168.1.100:8180". You should be able to 'browse' around a bit, seeing your massive one author and single book. That's enough. Go back to the screen where you last were at the command prompt, and press control-c to end the task.
We are going to have some logging in our install. Create the log file and set permissions with these commands: "sudo touch /home/librarian/logs/calibre.log && sudo chown -R librarian:librarian /home/librarian/logs/calibre.log"
We will have separate users for our install. It's not strictly necessary now, but might be down the road.
Create the user database and enter your first user by entering this: "sudo calibre-server --userdb /home/librarian/.config/calibre/server-users.sqlite --manage-users"
Create a library user. We assume username "librarian" and password "password" for this example. Don't type the quotation marks. In addition, give this user rights to all libraries in case you added another. Add another user if you like and provide credentials as well as what library you want that user to have access to.
Next we will need a service file to get calibre-server running at every boot. Using your favorite text editor, edit /etc/systemd/system/calibre-server.service.
Mine looks like this (lines that are comments start with an octothorpe '#'. You can leave them or delete the entire line):
[Unit] Description=calibre content server #this can be anything you want After=remote-fs.target #this prevents calibre from starting until after network shares are mounted. If you are storing everything locally, change remote to local [Service] Type=simple User=librarian Group=librarian #previous two lines should reflect the name of the user and group you set above ExecStart=/usbin/calibre-server \ #this should be your calibre executable. You can display it by typing "which calibre-server" at the command prompt. /mnt/ebooks/ebooks/ \ #your library location --enable-auth \ #if you set up authentication as we did. If you REALLY don't want it, delete previous line or comment it out --userdb="/home/librarian/.config/calibre/server-users.sqlite" \ #location of the database we set above --log="/home/librarian/logs/calibre.log" \ #location of the log file we set above --max-log-size=2 #maximum size of the log in megabytes Restart=on-failure #If it crashes or has certain problems, it will try to restart RestartSec=30 #Tunes restarting of the service [Install] WantedBy=multi-user.target #We only want this if we are running services. Not in a single user mode for system. Even if you are the only user, it has nothing to do with this line. Don't touch unless you know what you're doing.Reload your services configuration with "systemctl daemon-reload" and attempt to start the server with "systemctl start calibre-server"
Wait 10-30 seconds (it take a bit to get going) and investigate with "systemctl status calibre-server" or "ps ax | grep calibre" or both. The systemctl method is preferred. The beginning of roughly the third line of output should look like:
Active: active (running)Stop the service with "systemctl stop calibre-server". Check status. It should no longer say 'Running'. Start the service again. Wait a minute or two. At least as much time as it takes to type the next two commands. Check status. At the end of roughly the third line, there should be a time. It should display a time roughly equal to the last time you issued the command with start. A minute or two.
Now restart the service with "systemctl restart calibre-server" and after no more than about five seconds, issue the status command. The time at the end should be roughly five seconds. If it still says a minute or more, wait 10 seconds and try again. If it still shows an odd time, try the stop command, see if it stops, like it did before. Something isn't right.
And now to make it start on every boot, use the command "systemctl enable calibre-server". You can reboot, wait a minute or so, and then issue the status command to see if it started up ok. (I know there's an easier way than a reboot, but I rarely use it with VMs, so I'm not looking it up now.)
You can go read your copy of Hearts of Darkness (a solid book, btw), take a rest, or forge on.
Install calibre-web (optional but recommended)This is completely optional but oh so desireable. As good as what calibre does, the author is not as good at UX as he is at other things. The marketplace of ideas stepped in and provided us with calibre-web. It is simply a different front end to calibre. If you like the basic server, you can skip this section.
Download a copy of the software. Currently located at https://github.com/janeczku/calibre-web/archive/master.zip. easiest way is to change to the /srv/ directory and type "wget https://github.com/janeczku/calibre-web/archive/master.zip" and hit enter. Then 'unzip master.zip'. There is now a directory named "calibre-web-master". Change it to "calibre-web" with "mv calibre-web-master calibre-web". Then assign ownership of this folder to your librarian with "chown -R librarian:librarian calibre-web"
Change into that directory. At this point you can largely follow the instructions here, beginning at step 3: https://github.com/janeczku/calibre-web/wiki/How-To:Install-Calibre-web-(-Python3-)-in-Linux-Mint-20---Linux-Mint-19-in-Linux-Mint-20---Linux-Mint-19).
- 1Install requirements with "sudo python3 -m pip install --system --target vendor -r requirements.txt"
- Run calibre-web with "sudo -u librarian python3 /srv/calibre-web/cps.py"
- Leave it running and do not close the terminal.
- Go to "http://192.168.1.100:8083" in your browser. You login username is admin and password is admin123
At this point you can setup the startup script or you can keep setting up calibre-web. The startup script will be used even if you have to wipe this out and reinstall what you have so far. OTOH, you won't have to bother with the startup script if you decide you hate the interface and don't want it.
Walk through the setup wizard, filling in as much information as you can. If you collected the right information regarding paths and filenames you should have it all above.
A few suggestions:
- Assign at least one other admin user in case you forget the password after changing it from 'admin123'.
- Decide which software is going to take 'lead' for importing books, especially manual imports. I chose LazyLibrarian because it pings calibre which backfills calibre-web. The other options would require more manual intervention from time to time. Not to say that this is free of it. Oh no, the metadata is too bad for that to be possible.
- If you have a Kindle, set up email to Kindle. You'll need to look up the address on Amazon's site. You'll need an email sender. (I use Google, which will require you to setup an application password. Searching "gmail application specific password" should get you to directions for that.
Next we will need a service file to get calibre-web running at every boot. Using your favorite text editor, edit /etc/systemd/system/calibre-web.service.
Mine looks like this (lines that are comments start with an octothorpe '#'. You can leave them or delete the entire line):
[Unit] Description=Calibre-Web #any descriptive name you like After=remote-fs.target #this prevents calibre from starting until after network shares are mounted. If you are storing everything locally, change remote to local [Service] Type=simple User=librarian Group=librarian #previous two lines should reflect the name of the user and group you set above ExecStart=/usbin/python3 /srv/calibre-web/cps.py #determine the 'python' part by typing "which python3" at the command line. The cps.py part will be in the directory where everything is installed for calibre-web WorkingDirectory=/srv/calibre-web/ #can be changed to /home/librarian/calibre-web after creating the directory, but specifying this one makes installation and cleanup very tidy. [Install] WantedBy=multi-user.target #We only want this if we are running services. Not in a single user mode for system. Even if you are the only user, it has nothing to do with this line. Don't touch unless you know what you're doing.One other item of note. If you are keeping calibre-web, you should change your /etc/systemd/system/calibre-server.service file. The line saying "After" should be edited to read "After=calibre-web.service remote-fs.target" for network shares or "After=calibre-web.service local-fs.target" for local data. This makes sure that calibre-web starts firsts, calibre-server second. If it happens the other way around, calibre-web will not be able to access the database.
Reload your services configuration with "systemctl daemon-reload" and attempt to start the server with "systemctl start calibre-web"
Wait 10-30 seconds (it take a bit to get going) and investigate with "systemctl status calibre-web" or "ps ax | grep calibre-web" or both. The systemctl method is preferred. The beginning of roughly the third line of output should look like "Active: active (running)".
Stop the service with "systemctl stop calibre-web". Check status. It should no longer say 'Running'. Start the service again. Wait a minute or two. At least as much time as it takes to type the next two commands. Check status. At the end of roughly the third line, there should be a time. It should display a time roughly equal to the last time you issued the command with start. A minute or two.
Now restart the service with "systemctl restart calibre-web" and after no more than about five seconds, issue the status command. The time at the end should be roughly five seconds. If it still says a minute or more, wait 10 seconds and try again. If it still shows an odd time, try the stop command, see if it stops, like it did before. Something isn't right.
And now to make it start on every boot, use the command "systemctl enable calibre-web". You can reboot, wait a minute or so, and then issue the status command to see if it started up ok. (I know there's an easier way than a reboot, but I rarely use it with VMs, so I'm not looking it up now.)
Again, if you prefer the other interface, this one is optional. You can 'uninstall' it at this point by deleting /srv/calibre-web/ and going on about your life.
You can go read your copy of Hearts of Darkness (a solid book, btw), take a rest, or forge on.
Install lazylibrarianSwitch to /srv or wherever you want your installation executables and configs to go. Get the current source by entering the command: "git clone https://gitlab.com/LazyLibrarian/LazyLibrarian.git". This should create a directory named LazyLibrarian in the /srv directory. Start the program by running "python LazyLibrarian.py -d". If it crashes or provides errors, you probably are missing some required libraries. Double check the list above.
Cancel the program with control-c. Set ownership of the directory with "chown -R librarian:librarian /srv/LazyLibrarian". Start the program again, this time by running "sudo -u librarian python LazyLibrarian.py -d". Open a browser window and go to http://192.168.1.100:5299. Cancel the program with control-c. If you saw something, we need to make it start up automatically. If it didn't start or you have errors, now is the time to fix them.
We will need a service file to get lazylibrarian running at every boot. Using your favorite text editor, edit /etc/systemd/system/lazylibrarian.service.
Mine looks like this (lines that are comments start with an octothorpe '#'. You can leave them or delete the entire line):
[Unit] Description=LazyLibrarian After=network.target [Service] ExecStart=/usbin/python3 /srv/LazyLibrarian/LazyLibrarian.py Type=simple User=librarian Group=librarian Restart=on-failure [Install] WantedBy=multi-user.targetReload your services configuration with "systemctl daemon-reload" and attempt to start the server with "systemctl start lazylibrarian"
Wait 10-30 seconds (it take a bit to get going) and investigate with "systemctl status lazylibrarian" or "ps ax | grep lazylibrarian" or both. The systemctl method is preferred. The beginning of roughly the third line of output should look like "Active: active (running)".
Stop the service with "systemctl stop lazylibrarian". Check status. It should no longer say 'Running'. Start the service again. Wait a minute or two. At least as much time as it takes to type the next two commands. Check status. At the end of roughly the third line, there should be a time. It should display a time roughly equal to the last time you issued the command with start. A minute or two.
Now restart the service with "systemctl restart lazylibrarian" and after no more than about five seconds, issue the status command. The time at the end should be roughly five seconds. If it still says a minute or more, wait 10 seconds and try again. If it still shows an odd time, try the stop command, see if it stops, like it did before. Something isn't right.
And now to make it start on every boot, use the command "systemctl enable lazylibrarian". You can reboot, wait a minute or so, and then issue the status command to see if it started up ok. (I know there's an easier way than a reboot, but I rarely use it with VMs, so I'm not looking it up now.)
Now it's time to configure LazyLibrarian.
Between each tab and subtab on the setup, hit save. It's easy to get lost and forget what you've done, so save often. All that will happen is some errors will get thrown because we won't really have this configured enough to work until 75% done. Similarly, if there's a 'test' button near data you enter, try it. If it throws an error at this stage, it almost certainly won't work for real. Better to fix now than hunt bugs later.
Switch to the config tab in the browser. It's the one with the gear icon. The first subtab is interface. Server details should be blank. Under logs, enter a location for a log file. "/srv/LazyLibrarian/Logs" works well if not already selected. Screenlog should be 500, files set to 10. 99% of people use the bootstrap skin (madeup statistic, but most screenshots online use it.) In the bottom right, untick magazines and comics if you aren't using those features. I'll discuss only ebooks and audiobooks. Most of these settings are personal preference. Set the proxy if your system needs one to reach the internet.
The next subtab is 'Importing'. First column, 'Information Sources'. Easiest source is a GoodReads API key. Go to that site, set it up, and copy the key. (If you don't have one, go to this link https://www.goodreads.com/api/keys provide the required information only, and it will provide the key). Do not enable 'GoodReads Sync' at this time. It's going to require reading and planning. I don't use it because I don't care if GoodReads tracks what I've read. I do care about getting want lists out of GoodReads and we'll do that elsewhere.)
Next is file formats. For each of the three boxes, enter a comma separated list of the file formats you want for a given category. "epub, mobi, pdf" is good for ebooks. The converters and process is most mature. I haven't gotten anything else to work. Maybe some day. Audiobooks works with mp3. I'm trying m4b, but haven't completed my testing with my stack. For now, stick with mp3. Magazines I have no opinion on except that pdfs are common. All of the checkboxes below should be blank for now. After your testing and you are satsified, I suggest adding the checkmarks for the two blacklist options. It will cut down on reloading the same bad files over and over.
Finally, language. Set this for your country. I'm an American English speaker, so I use "en, eng, en-US, en-GB, Unknown". You may not want Unknown unless you are having trouble getting books that should be available in your selected languages. The date display options are personal preference. "$m-$d-$Y" would be typical American date nomenclature. "$Y-$m-$d" probably more popular among Europeans.
Next tab is Downloaders. In this, I'm using SABnzbd+ and qBitTorrent.
For SABnzbd+, setup is straightforward. Enter your SABnzbd+ host's location and port. Credentials for the SABnzbd+ server (not your Usenet provider) and the api key. The API key can be found by clicking the gear icon in SABnzbd+ and then the 'General' tab. Get the api key, not the NZB key. SABnzbd+ should be setup with categories. ebooks should have their own category with a particular location for completed downloads. I have this setup, and the category is 'ebooks' which you enter here. 'Delete from sabnzbd history' is the only ticked box in this column.
For qBitTorrent, setup is pretty similar. Enter your qBitTorrent host's location and port. Enter credentials if needed. Provide category name. The download directory is where the torrent client saves files, but as seen by the lazylibrarian host. If you followed along, this should be '/mnt/downloads'. 'Use Torrent Blackhole' is the only UNticked box in this column.
Providers is the next tab. The content will depend on where you are looking for ebooks.
Priority doesn't have to be set. Use it to favor some providers (they have higher quality books for example) and disfavor others. A provider with a higher score/rating will be used over a lower scored one if the search results are scored at the same value.
Newznab generally provides Usenet searches. Your provider can provide the URL and the key.
Torznab is a way to interface to various torrent search engines using Jackett. Setting that up is beyond the scope of this document. If you've set it up, you should know how to get the data that LazyLibrarian needs here.
RSS/Wishlist feeds are, honestly, an odd little beast. They perform two functions. One is to periodically update a list of torrents available from certain trackers. If you know you need this, enter the rss feed for the url here. Of more interest is the ability to use these as sources for wanted books. If the rss feed is from GoodReads, Amazon, New York Times or Listopia, it will grab that list of books, begin searching, and then download them. I use this for my GoodReads want sync. Find/create a bookshelf on GoodReads. Populate that shelf. Then click on the shelf to show the list. At the bottom of the page, there is a small link labelled 'RSS'. Copy that link. It will be something like: "https://www.goodreads.com/review/list_rss/ANIDENTIFIER?key=AWHOLEBUNCHOFSTUFFTHATCOULDBEUSEDTOIDENTIFYME&shelf=to-read" except the all caps parts will be some identifying code. Paste that link into the RSS URL field in LazyLibrarian. Now, shortly after you add an item to this list in GoodReads, LazyLibrarian will notice and look for the book.
Torrent providers are built in torrent searches. These aren't all always working and or available. Use as needed.
IRC is probably the easiest provider to configure. Most of the time. 'Name' is a simple description. 'Server' is the server hostname, such as 'irc.irchighway.net' or 'irc.undernet.org'. Channel is just that: the name of the channel, including the octothorpe, such as '#ebooks'. The botnick and botpass are fields for servers where you can reserve a bot name. You'll have to look at your irc server and see if this is the case. If so, register the name and password, and enter the credentials here. This isn't universally allowed.
At the bottom of the page is a button marked 'Blocked Providers' There probably are not any right now. As you use LazyLibrarian, if the software encounters issues with a provider, it uses the list here to throttle that connection. If you've fixed something that is paused/throttled/blocked, just come here, open the list, and turn it off. It automatically turns back on if needed.
Install booksonic (optional. Recommended for audiobooks)Booksonic is a fork of airsonic and runs under java. It serves audiobooks. If not interested, skip it. There are a couple of dependencies, a java runtime and ffmpeg. If installing from scratch, the following command will install them: 'apt install openjdk-8-jre ffmpeg'. There have been a few changes to the development of booksonic since inception. At the time of this writing, download links can be found at: https://booksonic.org/download.
Switch to /srv or wherever you want your installation executables and configs to go. Create a directory named 'booksonic'. Set ownership of the directory with "chown -R librarian:librarian /srv/booksonic". Change into that directory. Download the .war file from the link above. Do not get the 'legacy' link. At the time of this writing, the command to do that is "wget https://github.com/popeen/Booksonic-Aireleases/download/v2009.1.0/booksonic.war" You can quickly test your install by running " java -jar booksonic.war -Dserver.port=4040" and visiting "http://192.168.1.100:4040". If it crashes or provides errors, you probably are missing some required libraries. Double check the list above. If everything looks ok, cancel the program with control-c. delete everything in the /srv/booksonic direct except the .war file. If you accidentally deleted everything, just download a new copy.
Next we will need a service file to get calibre-web running at every boot. Using your favorite text editor, edit /etc/systemd/system/booksonic.service.
Mine looks like this (lines that are comments start with an octothorpe '#'. You can leave them or delete the entire line):
[Unit] Description=Booksonic service [Service] WorkingDirectory=/srv/booksonic ExecStart=/usbin/java -jar /srv/booksonic/booksonic.war #There are a multitude of options here for setting memory usage, ports, etc. Using #this, the url you will visit is http://192.168.1.100:8080. User=librarian Group=librarian Type=simple Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.targetReload your services configuration with "systemctl daemon-reload" and attempt to start the server with "systemctl start booksonic"
Wait 10-30 seconds (it take a bit to get going) and investigate with "systemctl status booksonic" or "ps ax | grep booksonic" or both. The systemctl method is preferred. The beginning of roughly the third line of output should look like "Active: active (running)".
Stop the service with "systemctl stop booksonic". Check status. It should no longer say 'Running'. Start the service again. Wait a minute or two. At least as much time as it takes to type the next two commands. Check status. At the end of roughly the third line, there should be a time. It should display a time roughly equal to the last time you issued the command with start. A minute or two.
Now restart the service with "systemctl restart booksonic" and after no more than about five seconds, issue the status command. The time at the end should be roughly five seconds. If it still says a minute or more, wait 10 seconds and try again. If it still shows an odd time, try the stop command, see if it stops, like it did before. Something isn't right.
And now to make it start on every boot, use the command "systemctl enable booksonic". You can reboot, wait a minute or so, and then issue the status command to see if it started up ok. (I know there's an easier way than a reboot, but I rarely use it with VMs, so I'm not looking it up now.)
ConclusionNow you should have a working install of calibre, calibre-web, lazylibrarian, and booksonic. Go into booksonic, add an author, and add a book. I've found searching for a book using ISBN is the fastest. When you add that book, if the net gods are smiling on you, your system will locate them, download them, and transfer them to calibre. If you chose an audiobook, the same thing should happen except that your book will be available in booksonic.
You will have to determine the legalities moralities of any of this for yourself and your country.
One problem you will encounter is horrible file naming and metadata. Everyone has their own idea about what cataloguing is best, and the files you download may not work well with the programs we've installed. Honestly, their authors have done fantastic work dealing with a very tricky problem. If you find value in this guide and there is interest, I will try to write some shorter guides about how to deal with metadata and other common problem areas encountered with this tool stack.
Vault 7 - CIA Hacking Tools Revealed
March 07, 2017submitted by CuteBananaMuffin to conspiracy
from Wikileaks Website
Today, Tuesday 7 March 2017, WikiLeaks begins its new series of leaks on the U.S. Central Intelligence Agency.
Code-named "Vault 7" by WikiLeaks, it is the largest ever publication of confidential documents on the agency.
The first full part of the series, "Year Zero", comprises 8,761 documents and files from an isolated, high-security network situated inside the CIA's Center for Cyber Intelligence (below image) in Langley, Virgina.
It follows an introductory disclosure last month of CIA targeting French political parties and candidates in the lead up to the 2012 presidential election.
Recently, the CIA lost control of the majority of its hacking arsenal including,
...and associated documentation.
This extraordinary collection, which amounts to more than several hundred million lines of code, gives its possessor the entire hacking capacity of the CIA.
The archive appears to have been circulated among former U.S. government hackers and contractors in an unauthorized manner, one of whom has provided WikiLeaks with portions of the archive.
"Year Zero" introduces the scope and direction of the CIA's global covert hacking program, its malware arsenal and dozens of "zero day" weaponized exploits against a wide range of U.S. and European company products, include,
...which are turned into covert microphones.
Since 2001 the CIA has gained political and budgetary preeminence over the U.S. National Security Agency (NSA).
The CIA found itself building not just its now infamous drone fleet, but a very different type of covert, globe-spanning force - its own substantial fleet of hackers.
The agency's hacking division freed it from having to disclose its often controversial operations to the NSA (its primary bureaucratic rival) in order to draw on the NSA's hacking capacities.
By the end of 2016, the CIA's hacking division, which formally falls under the agency's Center for Cyber Intelligence (CCI - below image), had over 5000 registered users and had produced more than a thousand,
hacking systems trojans viruses,...and other "weaponized" malware.
Such is the scale of the CIA's undertaking that by 2016, its hackers had utilized more codes than those used to run Facebook.
The CIA had created, in effect, its "own NSA" with even less accountability and without publicly answering the question as to whether such a massive budgetary spend on duplicating the capacities of a rival agency could be justified.
In a statement to WikiLeaks the source details policy questions that they say urgently need to be debated in public, including whether the CIA's hacking capabilities exceed its mandated powers and the problem of public oversight of the agency.
The source wishes to initiate a public debate about the security, creation, use, proliferation and democratic control of cyberweapons.
Once a single cyber 'weapon' is 'loose' it can spread around the world in seconds, to be used by rival states, cyber mafia and teenage hackers alike.
Julian Assange, WikiLeaks editor stated that,
"There is an extreme proliferation risk in the development of cyber 'weapons'.Comparisons can be drawn between the uncontrolled proliferation of such 'weapons', which results from the inability to contain them combined with their high market value, and the global arms trade.
But the significance of 'Year Zero' goes well beyond the choice between cyberwar and cyberpeace. The disclosure is also exceptional from a political, legal and forensic perspective."
Wikileaks has carefully reviewed the "Year Zero" disclosure and published substantive CIA documentation while avoiding the distribution of 'armed' cyberweapons until a consensus emerges on the technical and political nature of the CIA's program and how such 'weapons' should analyzed, disarmed and published.
Wikileaks has also decided to Redact (see far below) and Anonymize some identifying information in "Year Zero" for in depth analysis. These redactions include ten of thousands of CIA targets and attack machines throughout,
Latin America Europe the United States
While we are aware of the imperfect results of any approach chosen, we remain committed to our publishing model and note that the quantity of published pages in "Vault 7" part one ("Year Zero") already eclipses the total number of pages published over the first three years of the Edward Snowden NSA leaks.
AnalysisCIA malware targets iPhone, Android, smart TVs
CIA malware and hacking tools are built by EDG (Engineering Development Group), a software development group within CCI (Center for Cyber Intelligence), a department belonging to the CIA's DDI (Directorate for Digital Innovation).
The DDI is one of the five major directorates of the CIA (see above image of the CIA for more details).
The EDG is responsible for the development, testing and operational support of all backdoors, exploits, malicious payloads, trojans, viruses and any other kind of malware used by the CIA in its covert operations world-wide.
The increasing sophistication of surveillance techniques has drawn comparisons with George Orwell's 1984, but "Weeping Angel", developed by the CIA's Embedded Devices Branch (EDB), which infests smart TVs, transforming them into covert microphones, is surely its most emblematic realization.
The attack against Samsung smart TVs was developed in cooperation with the United Kingdom's MI5/BTSS.
After infestation, Weeping Angel places the target TV in a 'Fake-Off' mode, so that the owner falsely believes the TV is off when it is on. In 'Fake-Off' mode the TV operates as a bug, recording conversations in the room and sending them over the Internet to a covert CIA server.
As of October 2014 the CIA was also looking at infecting the vehicle control systems used by modern cars and trucks. The purpose of such control is not specified, but it would permit the CIA to engage in nearly undetectable assassinations.
The CIA's Mobile Devices Branch (MDB) developed numerous attacks to remotely hack and control popular smart phones. Infected phones can be instructed to send the CIA the user's geolocation, audio and text communications as well as covertly activate the phone's camera and microphone.
Despite iPhone's minority share (14.5%) of the global smart phone market in 2016, a specialized unit in the CIA's Mobile Development Branch produces malware to infest, control and exfiltrate data from iPhones and other Apple products running iOS, such as iPads.
CIA's arsenal includes numerous local and remote "zero days" developed by CIA or obtained from GCHQ, NSA, FBI or purchased from cyber arms contractors such as Baitshop.
The disproportionate focus on iOS may be explained by the popularity of the iPhone among social, political, diplomatic and business elites.
A similar unit targets Google's Android which is used to run the majority of the world's smart phones (~85%) including Samsung, HTC and Sony. 1.15 billion Android powered phones were sold last year.
"Year Zero" shows that as of 2016 the CIA had 24 "weaponized" Android "zero days" which it has developed itself and obtained from GCHQ, NSA and cyber arms contractors.
These techniques permit the CIA to bypass the encryption of, WhatsApp
CIA malware targets Windows, OSx, Linux, routers
The CIA also runs a very substantial effort to infect and control Microsoft Windows users with its malware.
This includes multiple local and remote weaponized "zero days", air gap jumping viruses such as "Hammer Drill" which infects software distributed on CD/DVDs, infectors for removable media such as USBs, systems to hide data in images or in covert disk areas ("Brutal Kangaroo") and to keep its malware infestations going.
Many of these infection efforts are pulled together by the CIA's Automated Implant Branch (AIB), which has developed several attack systems for automated infestation and control of CIA malware, such as "Assassin" and "Medusa".
Attacks against Internet infrastructure and webservers are developed by the CIA's Network Devices Branch (NDB).
The CIA has developed automated multi-platform malware attack and control systems covering Windows, Mac OS X, Solaris, Linux and more, such as EDB's "HIVE" and the related "Cutthroat" and "Swindle" tools, which are described in the examples section far below.
CIA 'hoarded' vulnerabilities ("zero days")
In the wake of Edward Snowden's leaks about the NSA, the U.S. technology industry secured a commitment from the Obama administration that the executive would disclose on an ongoing basis - rather than hoard - serious vulnerabilities, exploits, bugs or "zero days" to Apple, Google, Microsoft, and other US-based manufacturers.
Serious vulnerabilities not disclosed to the manufacturers places huge swathes of the population and critical infrastructure at risk to foreign intelligence or cyber criminals who independently discover or hear rumors of the vulnerability.
If the CIA can discover such vulnerabilities so can others.
The U.S. government's commitment to the Vulnerabilities Equities Process came after significant lobbying by US technology companies, who risk losing their share of the global market over real and perceived hidden vulnerabilities.
The government stated that it would disclose all pervasive vulnerabilities discovered after 2010 on an ongoing basis.
"Year Zero" documents show that the CIA breached the Obama administration's commitments. Many of the vulnerabilities used in the CIA's cyber arsenal are pervasive and some may already have been found by rival intelligence agencies or cyber criminals.
As an example, specific CIA malware revealed in "Year Zero" is able to penetrate, infest and control both the Android phone and iPhone software that runs or has run presidential Twitter accounts.
The CIA attacks this software by using undisclosed security vulnerabilities ("zero days") possessed by the CIA but if the CIA can hack these phones then so can everyone else who has obtained or discovered the vulnerability.
As long as the CIA keeps these vulnerabilities concealed from Apple and Google (who make the phones) they will not be fixed, and the phones will remain hackable.
The same vulnerabilities exist for the population at large, including the U.S. Cabinet, Congress, top CEOs, system administrators, security officers and engineers.
By hiding these security flaws from manufacturers like Apple and Google the CIA ensures that it can hack everyone at the expense of leaving everyone hackable.
'Cyberwar' programs are a serious proliferation risk
Cyber 'weapons' are not possible to keep under effective control.
While nuclear proliferation has been restrained by the enormous costs and visible infrastructure involved in assembling enough fissile material to produce a critical nuclear mass, cyber 'weapons', once developed, are very hard to retain.
Cyber 'weapons' are in fact just computer programs which can be pirated like any other. Since they are entirely comprised of information they can be copied quickly with no marginal cost.
Securing such 'weapons' is particularly difficult since the same people who develop and use them have the skills to exfiltrate copies without leaving traces - sometimes by using the very same 'weapons' against the organizations that contain them.
There are substantial price incentives for government hackers and consultants to obtain copies since there is a global "vulnerability market" that will pay hundreds of thousands to millions of dollars for copies of such 'weapons'.
Similarly, contractors and companies who obtain such 'weapons' sometimes use them for their own purposes, obtaining advantage over their competitors in selling 'hacking' services.
Over the last three years the United States intelligence sector, which consists of government agencies such as the CIA and NSA and their contractors, such as Booz Allan Hamilton, has been subject to unprecedented series of data exfiltrations by its own workers.
A number of intelligence community members not yet publicly named have been arrested or subject to federal criminal investigations in separate incidents.
Most visibly, on February 8, 2017 a U.S. federal grand jury indicted Harold T. Martin III with 20 counts of mishandling classified information.
The Department of Justice alleged that it seized some 50,000 gigabytes of information from Harold T. Martin III that he had obtained from classified programs at NSA and CIA, including the source code for numerous hacking tools.
Once a single cyber 'weapon' is 'loose' it can spread around the world in seconds, to be used by peer states, cyber mafia and teenage hackers alike.
U.S. Consulate in Frankfurt is a covert CIA hacker base
In addition to its operations in Langley, Virginia the CIA also uses the U.S. consulate in Frankfurt as a covert base for its hackers covering Europe, the Middle East and Africa.
CIA hackers operating out of the Frankfurt consulate ("Center for Cyber Intelligence Europe" or CCIE) are given diplomatic ("black") passports and State Department cover.
The instructions for incoming CIA hackers make Germany's counter-intelligence efforts appear inconsequential: "Breeze through German Customs because you have your cover-for-action story down pat, and all they did was stamp your passport" Your Cover Story (for this trip) Q: Why are you here? A: Supporting technical consultations at the Consulate. Two earlier WikiLeaks publications give further detail on CIA approaches to customs and secondary screening procedures.
Once in Frankfurt CIA hackers can travel without further border checks to the 25 European countries that are part of the Shengen open border area - including France, Italy and Switzerland.
A number of the CIA's electronic attack methods are designed for physical proximity.
These attack methods are able to penetrate high security networks that are disconnected from the internet, such as police record database. In these cases, a CIA officer, agent or allied intelligence officer acting under instructions, physically infiltrates the targeted workplace.
The attacker is provided with a USB containing malware developed for the CIA for this purpose, which is inserted into the targeted computer. The attacker then infects and exfiltrates data to removable media.
For example, the CIA attack system Fine Dining, provides 24 decoy applications for CIA spies to use.
To witnesses, the spy appears to be running a program showing videos (e.g VLC), presenting slides (Prezi), playing a computer game (Breakout2, 2048) or even running a fake virus scanner (Kaspersky, McAfee, Sophos).
But while the decoy application is on the screen, the underlying system is automatically infected and ransacked.
How the CIA dramatically increased proliferation risks
In what is surely one of the most astounding intelligence own goals in living memory, the CIA structured its classification regime such that for the most market valuable part of "Vault 7", the CIA's, weaponized malware (implants + zero days) Listening Posts (LP) Command and Control (C2) systems, ...the agency has little legal recourse.
The CIA made these systems unclassified.
Why the CIA chose to make its cyber-arsenal unclassified reveals how concepts developed for military use do not easily crossover to the 'battlefield' of cyber 'war'.
To attack its targets, the CIA usually requires that its implants communicate with their control programs over the internet.
If CIA implants, Command & Control and Listening Post software were classified, then CIA officers could be prosecuted or dismissed for violating rules that prohibit placing classified information onto the Internet.
Consequently the CIA has secretly made most of its cyber spying/war code unclassified. The U.S. government is not able to assert copyright either, due to restrictions in the U.S. Constitution.
This means that cyber 'arms' manufactures and computer hackers can freely "pirate" these 'weapons' if they are obtained. The CIA has primarily had to rely on obfuscation to protect its malware secrets.
Conventional weapons such as missiles may be fired at the enemy (i.e. into an unsecured area). Proximity to or impact with the target detonates the ordnance including its classified parts. Hence military personnel do not violate classification rules by firing ordnance with classified parts.
Ordnance will likely explode. If it does not, that is not the operator's intent.
Over the last decade U.S. hacking operations have been increasingly dressed up in military jargon to tap into Department of Defense funding streams.
For instance, attempted "malware injections" (commercial jargon) or "implant drops" (NSA jargon) are being called "fires" as if a weapon was being fired.
However the analogy is questionable.
Unlike bullets, bombs or missiles, most CIA malware is designed to live for days or even years after it has reached its 'target'. CIA malware does not "explode on impact" but rather permanently infests its target. In order to infect target's device, copies of the malware must be placed on the target's devices, giving physical possession of the malware to the target.
To exfiltrate data back to the CIA or to await further instructions the malware must communicate with CIA Command & Control (C2) systems placed on internet connected servers.
But such servers are typically not approved to hold classified information, so CIA command and control systems are also made unclassified.
A successful 'attack' on a target's computer system is more like a series of complex stock maneuvers in a hostile take-over bid or the careful planting of rumors in order to gain control over an organization's leadership rather than the firing of a weapons system.
If there is a military analogy to be made, the infestation of a target is perhaps akin to the execution of a whole series of military maneuvers against the target's territory including observation, infiltration, occupation and exploitation.
Evading forensics and anti-virus
A series of standards lay out CIA malware infestation patterns which are likely to assist forensic crime scene investigators as well as, Apple
"Tradecraft DO's and DON'Ts" contains CIA rules on how its malware should be written to avoid fingerprints implicating the "CIA, US government, or its witting partner companies" in "forensic review".
Similar secret standards cover the, use of encryption to hide CIA hacker and malware communication (pdf) describing targets & exfiltrated data (pdf) executing payloads (pdf) persisting (pdf), ...in the target's machines over time.
CIA hackers developed successful attacks against most well known anti-virus programs.
These are documented in, AV defeats Personal Security Products Detecting and defeating PSPs PSP/DebuggeRE Avoidance For example, Comodo was defeated by CIA malware placing itself in the Window's "Recycle Bin". While Comodo 6.x has a "Gaping Hole of DOOM".
CIA hackers discussed what the NSA's "Equation Group" hackers did wrong and how the CIA's malware makers could avoid similar exposure.
ExamplesThe CIA's Engineering Development Group (EDG) management system contains around 500 different projects (only some of which are documented by "Year Zero") each with their own sub-projects, malware and hacker tools.
The majority of these projects relate to tools that are used for,
penetration infestation ("implanting") control exfiltrationAnother branch of development focuses on the development and operation of Listening Posts (LP) and Command and Control (C2) systems used to communicate with and control CIA implants.
Special projects are used to target specific hardware from routers to smart TVs.
Some example projects are described below, but see the table of contents for the full list of projects described by WikiLeaks' "Year Zero".
The CIA's hand crafted hacking techniques pose a problem for the agency.
Each technique it has created forms a "fingerprint" that can be used by forensic investigators to attribute multiple different attacks to the same entity.
This is analogous to finding the same distinctive knife wound on multiple separate murder victims. The unique wounding style creates suspicion that a single murderer is responsible.
As soon one murder in the set is solved then the other murders also find likely attribution.
The CIA's Remote Devices Branch's UMBRAGE group collects and maintains a substantial library of attack techniques 'stolen' from malware produced in other states including the Russian Federation.
With UMBRAGE and related projects the CIA cannot only increase its total number of attack types but also misdirect attribution by leaving behind the "fingerprints" of the groups that the attack techniques were stolen from.
UMBRAGE components cover,
Fine Dining comes with a standardized questionnaire i.e menu that CIA case officers fill out.
The questionnaire is used by the agency's OSB (Operational Support Branch) to transform the requests of case officers into technical requirements for hacking attacks (typically "exfiltrating" information from computer systems) for specific operations.
The questionnaire allows the OSB to identify how to adapt existing tools for the operation, and communicate this to CIA malware configuration staff.
The OSB functions as the interface between CIA operational staff and the relevant technical support staff.
Among the list of possible targets of the collection are,
The 'menu' also asks for information if recurring access to the target is possible and how long unobserved access to the computer can be maintained.
This information is used by the CIA's 'JQJIMPROVISE' software (see below) to configure a set of CIA malware suited to the specific needs of an operation.
HIVE is a multi-platform CIA malware suite and its associated control software.
The project provides customizable implants for Windows, Solaris, MikroTik (used in internet routers) and Linux platforms and a Listening Post (LP)/Command and Control (C2) infrastructure to communicate with these implants.
The implants are configured to communicate via HTTPS with the webserver of a cover domain; each operation utilizing these implants has a separate cover domain and the infrastructure can handle any number of cover domains.
Each cover domain resolves to an IP address that is located at a commercial VPS (Virtual Private Server) provider.
The public-facing server forwards all incoming traffic via a VPN to a 'Blot' server that handles actual connection requests from clients.
It is setup for optional SSL client authentication: if a client sends a valid client certificate (only implants can do that), the connection is forwarded to the 'Honeycomb' toolserver that communicates with the implant.
If a valid certificate is missing (which is the case if someone tries to open the cover domain website by accident), the traffic is forwarded to a cover server that delivers an unsuspicious looking website.
The Honeycomb toolserver receives exfiltrated information from the implant; an operator can also task the implant to execute jobs on the target computer, so the toolserver acts as a C2 (command and control) server for the implant.
Similar functionality (though limited to Windows) is provided by the RickBobby project.
See the classified user and developer guides for HIVE.
Frequently Asked Questions
Why now?WikiLeaks published as soon as its verification and analysis were ready. In February the Trump administration has issued an Executive Order calling for a "Cyberwar" review to be prepared within 30 days.
While the review increases the timeliness and relevance of the publication it did not play a role in setting the publication date.
Names, email addresses and external IP addresses have been redacted in the released pages (70,875 redactions in total) until further analysis is complete. Over-redaction: Some items may have been redacted that are not employees, contractors, targets or otherwise related to the agency, but are, for example, authors of documentation for otherwise public projects that are used by the agency.
Identity vs. person: the redacted names are replaced by user IDs (numbers) to allow readers to assign multiple pages to a single author. Given the redaction process used a single person may be represented by more than one assigned identifier but no identifier refers to more than one real person.
Archive attachments (zip, tar.gz, ...), are replaced with a PDF listing all the file names in the archive. As the archive content is assessed it may be made available; until then the archive is redacted.
Attachments with other binary content, are replaced by a hex dump of the content to prevent accidental invocation of binaries that may have been infected with weaponized CIA malware. As the content is assessed it may be made available; until then the content is redacted.
Tens of thousands of routable IP addresses references, (including more than 22 thousand within the United States) that correspond to possible targets, CIA covert listening post servers, intermediary and test systems, are redacted for further exclusive investigation.
Binary files of non-public origin, are only available as dumps to prevent accidental invocation of CIA malware infected binaries.
The organizational chart (far above image) corresponds to the material published by WikiLeaks so far.
Since the organizational structure of the CIA below the level of Directorates is not public, the placement of the EDG and its branches within the org chart of the agency is reconstructed from information contained in the documents released so far.
It is intended to be used as a rough outline of the internal organization; please be aware that the reconstructed org chart is incomplete and that internal reorganizations occur frequently.
"Year Zero" contains 7818 web pages with 943 attachments from the internal development groupware. The software used for this purpose is called Confluence, a proprietary software from Atlassian.
Webpages in this system (like in Wikipedia) have a version history that can provide interesting insights on how a document evolved over time; the 7818 documents include these page histories for 1136 latest versions.
The order of named pages within each level is determined by date (oldest first). Page content is not present if it was originally dynamically created by the Confluence software (as indicated on the re-constructed page).
What time period is covered?
The years 2013 to 2016. The sort order of the pages within each level is determined by date (oldest first).
WikiLeaks has obtained the CIA's creation/last modification date for each page but these do not yet appear for technical reasons. Usually the date can be discerned or approximated from the content and the page order.
If it is critical to know the exact time/date contact WikiLeaks.
What is "Vault 7"
"Vault 7" is a substantial collection of material about CIA activities obtained by WikiLeaks.
When was each part of "Vault 7" obtained?
Part one was obtained recently and covers through 2016. Details on the other parts will be available at the time of publication.
Is each part of "Vault 7" from a different source?
Details on the other parts will be available at the time of publication.
What is the total size of "Vault 7"?
The series is the largest intelligence publication in history.
How did WikiLeaks obtain each part of "Vault 7"?
Sources trust WikiLeaks to not reveal information that might help identify them.
Isn't WikiLeaks worried that the CIA will act against its staff to stop the series?
No. That would be certainly counter-productive.
Has WikiLeaks already 'mined' all the best stories?
No. WikiLeaks has intentionally not written up hundreds of impactful stories to encourage others to find them and so create expertise in the area for subsequent parts in the series. They're there.
Look. Those who demonstrate journalistic excellence may be considered for early access to future parts.
Won't other journalists find all the best stories before me?
Unlikely. There are very considerably more stories than there are journalists or academics who are in a position to write them.