script
February 6
Отчищаем PDF файлы от вредоносного/шпионского кода
По причине широкого использования формата PDF, он зачастую используется всякими чудаками на букву М для распространения зловредного или шпионского ПО.
Скачивая PDFку, например книжку с сайта или ТГ-канала, легко намотать на процессор своего ПеКа какую-нибудь заразу в виде бэкдора, майнера или кейлоггера от ЦРУ/АНБ/ФСБ/СБУ
Для профилактики всякого нехорошего, рекомендуется проверять загруженные файлы антивирусом или на сайте "вирустотал".
Также можно почистить файл с помощью простого питонического скрипта.
После запуска скрипта, открывается окно выбора папки, в которой содержатся подозрительные PDF файлы, происходит их отчистка и сохранение под новыми именами с префиксом clean_
import os from tkinter.filedialog import askdirectory from PyPDF2 import PdfReader, PdfWriter def pdf_cleaner(input_pdf_directory): for filename in os.listdir(input_pdf_directory): if filename.endswith('.pdf'): pdf_path = os.path.join(input_pdf_directory, filename) pdf_reader = PdfReader(pdf_path) pdf_writer = PdfWriter() # Remove Annotations for page in pdf_reader.pages: pdf_writer.add_page(page) if page.annotations: page.annotations.clear() # Add fake Metadata (optional) pdf_writer.add_metadata( { "/Author": "Comrade Major", "/Producer": "KGB", } ) # Save clean file new_pdf_path = os.path.join(input_pdf_directory, f'clean_{filename}') with open(new_pdf_path, 'wb') as new_pdf: pdf_writer.write(new_pdf) print(f'{filename} was cleaned!') def main(): # Ask the directory containing your PDFs pdf_directory = askdirectory() pdf_cleaner(pdf_directory) if __name__ == '__main__': main()