Spaces:
Runtime error
Runtime error
| #+TITLE: Spoof Detect | |
| Detect spoofed website by detecting logos from bank and financial entities in | |
| pages with =ssl certificates= that do not match. | |
| The process is pretty simple: | |
| - [1/2] scrape gvt websites to get a list of entities. | |
| - [x] 🇦🇷 BCRA | |
| - [ ] other countries | |
| - [x] get logos, names and url | |
| - [x] navigate the url, extract the ssl certificate and look for =img= and tags | |
| with =id= or =class= logo (needs more heuristics) to make a db of logos | |
| - [x] screenshot the page and slice it into tiles generating YOLO annotations for | |
| the detected logos | |
| - [x] augment data using the logos database and the logoless tiles as background images | |
| - [x] train yolov5s | |
| - [x] feed everything to a web extension that will detect the logos in any page and show a warning if the =SSL certificate= mismatches the collected one. (this is actually a bit hacky, as yolov6 has A LOT of postprocessing and i can't be bothered to reimplement it all in JS for TSJS to work, it currently relies on a rather hackish local deamon written in python) | |
| * running | |
| #+begin_src sh | |
| # build the training dataset | |
| docker-compose up --build --remove-orphans -d | |
| docker-compose exec python ./run | |
| # run the training on your machine or collab | |
| # https://colab.research.google.com/drive/10R7uwVJJ1R1k6oTjbkkhxPDka7COK-WE | |
| git clone https://github.com/ultralytics/yolov5 # clone repo | |
| pip install -U -r yolov5/requirements.txt # install dependencies | |
| python3 yolov5/train.py --img 416 --batch 80 --epochs 100 --data ./ia/data.yaml --cfg ./ia/yolov5s.yaml --weights '' | |
| #+end_src | |
| * research | |
| ** yolo | |
| https://github.com/ModelDepot/tfjs-yolo-tiny | |
| https://github.com/Hyuto/yolov5-tfjs | |
| ** augmentation | |
| there were a lot of augmentation solutions out there, because it had better | |
| piplines and multicore support we went with: | |
| - https://github.com/aleju/imgaug | |
| but leaving the other here for refs | |
| - https://github.com/srp-31/Data-Augmentation-for-Object-Detection-YOLO- | |
| - https://github.com/mdbloice/Augmentor | |
| ** proveedores | |
| http://www.bcra.gov.ar/SistemasFinancierosYdePagos/Proveedores-servicios-de-pago-ofrecen-cuentas-de-pago.asp | |
| http://www.bcra.gov.ar/SistemasFinancierosYdePagos/Proveedores-servicios-de-billeteras-digitales-Interoperables.asp | |
| http://www.bcra.gob.ar/SistemasFinancierosYdePagos/Entidades_financieras.asp | |
| ** certs in browsers | |
| https://stackoverflow.com/questions/6566545/is-there-any-way-to-access-certificate-information-from-a-chrome-extension | |
| https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webRequest#accessing_security_information | |
| https://chromium-review.googlesource.com/c/chromium/src/+/644858 | |
| ** papers | |
| https://logomotive.sidnlabs.nl/downloads/LogoMotive_paper.pdf | |