1

I'm sure this will be a silly question for those who know python but I'm trying to debug a python script and I can't find out something.

I'm getting the following error:

(sqlite3.OperationalError) attempt to write a readonly database [SQL: u'INSERT INTO samples (file_size, file_type, md5, crc32, sha1, sha256, sha512, ssdeep) VALUES (?, ?, ?, ?, ?, ?, ?, ?)']

I know that to fix this what I have to do is to change the DB access to write, but I don't know where this DB is located. The DB is created in the script this way:

db = Database()

And these are the imports:

import argparse
import fnmatch
import logging
import os
import random
import sys

try:
    import requests
    HAVE_REQUESTS = True
except ImportError:
    HAVE_REQUESTS = False

And the line in which I'm getting the error is the following one

db.add_path(...);

This file is part of the Cuckoo Droid project, specifically is the script to submit a APK to be analyzed. I don't know if the DB is located in the Android emulator or in the host machine. If so, I would like to know where that DB could be located in order to change the privileges of the DB to give write access. Any help would be grate, thanks.

1 Answers1

-2

The DB I was looking for is located inside cuckoo/ directory. Specifically inside db/ folder. To fix my problem what I made was to change privileges of the folder recursively:

sudo chmod 777 -R db
  • 2
    Doing recursive chmod 777 is very dangerous. It should be noted that this is a dangerous thing to do as it effectively removes all permission-based security of all files and subdirectories and will break e.g. ssh! – Maciej M Aug 27 '19 at 12:34