{"version":1,"pages":[{"id":"-M1S-4EgrvqGIsgMcLia","title":"Welcome to egonzalez blog","pathname":"/","siteSpaceId":"sitesp_yoqGr","description":""},{"id":"6ZrhpbniO0aYCS3gCL0b","title":"Software Supply Chain Security: Why It Matters","pathname":"/software-supply-chain-security/software-supply-chain-security-why-it-matters","siteSpaceId":"sitesp_yoqGr","breadcrumbs":[{"label":"Software Supply Chain Security"}]},{"id":"FiaVoDSpOTZqqLXe6OPS","title":"Software Supply Chain Security: A Technical Deep Dive","pathname":"/software-supply-chain-security/software-supply-chain-security-a-technical-deep-dive","siteSpaceId":"sitesp_yoqGr","breadcrumbs":[{"label":"Software Supply Chain Security"}]},{"id":"yahbDy88Qpl15CvdBGzB","title":"SLSA and the Software Supply Chain Security: Time to Get Serious","pathname":"/software-supply-chain-security/slsa-and-the-software-supply-chain-security-time-to-get-serious","siteSpaceId":"sitesp_yoqGr","breadcrumbs":[{"label":"Software Supply Chain Security"}]},{"id":"sP9soMBmSqm9cP4lyLLE","title":"Provenance","pathname":"/provenance","siteSpaceId":"sitesp_yoqGr"},{"id":"TbFyeBjOVZenxCrDzXBt","title":"Understanding Provenance in Software Supply Chain Security","pathname":"/provenance/understanding-provenance-in-software-supply-chain-security","siteSpaceId":"sitesp_yoqGr","breadcrumbs":[{"label":"Provenance"}]},{"id":"Ynblg6H6sqBrdl1LpSgv","title":"Building a secure development framework","pathname":"/building-a-secure-development-framework","siteSpaceId":"sitesp_yoqGr"},{"id":"-M1SRfJs3onjYhXFRT1g","title":"Index","pathname":"/hacking/index","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"}]},{"id":"-MCXWD0s6TKcIT_NXPHB","title":"Hack the box writeups","pathname":"/hacking/index/hack-the-box-writeups","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"}]},{"id":"-MKaAqRVGhRefTkXoK0X","title":"Dyplesher HTB writeup","pathname":"/hacking/index/hack-the-box-writeups/dyplesher-htb-writeup","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"},{"label":"Hack the box writeups"}]},{"id":"-MEDoofsZubxRF_CD-4A","title":"Fatty HTB writeup","pathname":"/hacking/index/hack-the-box-writeups/fatty-htb-writeup","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"},{"label":"Hack the box writeups"}]},{"id":"-MDe6sEJtM2tbww1_xsO","title":"Oouch HTB writeup","pathname":"/hacking/index/hack-the-box-writeups/oouch-htb-writeup","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"},{"label":"Hack the box writeups"}]},{"id":"-MCXWMiBIPsHbIJ-GN1c","title":"Sauna HTB writeup","pathname":"/hacking/index/hack-the-box-writeups/sauna","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"},{"label":"Hack the box writeups"}]},{"id":"-M4AMQuw6R896MiM98eZ","title":"Python Vulnerabilities","pathname":"/hacking/index/python-vulnerabilities","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"}]},{"id":"-M4AMrh3vVZP-XUMnwLa","title":"Data Deserialization","pathname":"/hacking/index/python-vulnerabilities/data-deserialization","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"},{"label":"Python Vulnerabilities"}]},{"id":"-M4ANIkNsojZAX276Swv","title":"Pickle","pathname":"/hacking/index/python-vulnerabilities/data-deserialization/pickle","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"},{"label":"Python Vulnerabilities"},{"label":"Data Deserialization"}]},{"id":"-M4ANGKgx23UfHt-W1EL","title":"XML","pathname":"/hacking/index/python-vulnerabilities/data-deserialization/xml","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"},{"label":"Python Vulnerabilities"},{"label":"Data Deserialization"}]},{"id":"-M4AN2a-E8wG3uN2zYY7","title":"YAML","pathname":"/hacking/index/python-vulnerabilities/data-deserialization/yaml","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"Hacking"},{"label":"Index"},{"label":"Python Vulnerabilities"},{"label":"Data Deserialization"}]},{"id":"-M1S-F-dxEyPiF8jxnZK","title":"Hacking cheatsheet","pathname":"/hacking/index/command-cheatsheet","siteSpaceId":"sitesp_yoqGr","description":"Hacking command list","breadcrumbs":[{"label":"Hacking"},{"label":"Index"}]},{"id":"-M1SPB5l3JassgdWDe6i","title":"Index","pathname":"/devsecops/index","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"DevSecOps"}]},{"id":"PlFsh9NkkQrN3MgBWfPD","title":"Gitlab CI minikube development environment","pathname":"/devsecops/index/gitlab-ci-minikube-development-environment","siteSpaceId":"sitesp_yoqGr","description":"Gitlab installation on minikube for CI testing","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"rn9U1LDDop2vxbXVC9TT","title":"Gerrit review minikube","pathname":"/devsecops/index/gerrit-review-minikube","siteSpaceId":"sitesp_yoqGr","description":"Deploy gerrit on kubernetes","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"d4BiEkCYu9t4gRwzpdBA","title":"Gerrit and gitlab replication and CI job hooks on k8s","pathname":"/devsecops/index/gerrit-and-gitlab-replication-and-ci-job-hooks-on-k8s","siteSpaceId":"sitesp_yoqGr","description":"Integrate gitlab and gerrit replication and execute CI pipelines","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"KuK9sWyCHWnCXcPSbkZ8","title":"Vault integration with Gitlab CI","pathname":"/devsecops/index/vault-integration-with-gitlab-ci","siteSpaceId":"sitesp_yoqGr","description":"Vault integration with Gitalb CI to retrieve secrets in job pipelines","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"fivmSkcdP9i8sgWozKya","title":"Gitlab CI template for DefectDojo","pathname":"/devsecops/index/gitlab-ci-template-for-defectdojo","siteSpaceId":"sitesp_yoqGr","description":"Gitlab CI generic template to upload reports to DefectDojo using curl","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"6bDL3DUitVUfulvNzqGv","title":"Falco real time runtime thread detection on k8s","pathname":"/devsecops/index/falco-real-time-runtime-thread-detection-on-k8s","siteSpaceId":"sitesp_yoqGr","description":"Installation and usage of falco inside kubernetes","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"QYTxJdXHB6J457gpCcmj","title":"Zarf - Airgap deployment in kubernetes","pathname":"/devsecops/index/zarf-airgap-deployment-in-kubernetes","siteSpaceId":"sitesp_yoqGr","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"3pqt9RVJIqWLMODvXzKr","title":"OWASP Dependency-track","pathname":"/devsecops/index/owasp-dependency-track","siteSpaceId":"sitesp_yoqGr","description":"Installation an example usages","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"-M1SJvTrBpcDa48u5Rjc","title":"OpenDaylight in a Docker","pathname":"/devsecops/index/opendaylight-in-a-docker","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"-M1SLI46bDLzp8VfFm7O","title":"To conditional or to skip, that's the Ansible question","pathname":"/devsecops/index/to-conditional-or-to-skip-thats-the-ansible-question","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"-M1SKrkbXw8O1cfD6obt","title":"Spacewalk Red Hat Satellite v5 in a Docker container PoC","pathname":"/devsecops/index/spacewalk-red-hat-satellite-v5-in-a-docker-container-poc","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"-M1SHdlXz-FSM8trdheM","title":"Ansible INI file module","pathname":"/devsecops/index/ansible-ini-file-module","siteSpaceId":"sitesp_yoqGr","description":"Simplifying your DevOps life","breadcrumbs":[{"label":"DevSecOps"},{"label":"Index"}]},{"id":"-M1SPhaNo5pCWahZkXIY","title":"Index","pathname":"/openstack/index","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"}]},{"id":"-M1SNYNaJONL95aTtcfC","title":"OpenStack tacker and service function chaining sfc with kolla","pathname":"/openstack/index/openstack-tacker-and-service-function-chaining-sfc-with-kolla","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SMx16CStayzpSFwgZ","title":"Deploy OpenStack designate with kolla-ansible","pathname":"/openstack/index/deploy-openstack-designate-with-kolla-ansible","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SM-kKK8EUzH0ySQ-J","title":"OpenStack keystone zero downtime upgrade process newton to ocata","pathname":"/openstack/index/openstack-keystone-zero-downtime-upgrade-process-newton-to-ocata","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SK__o7y0F3s2hPTIM","title":"Midonet integration with OpenStack Mitaka","pathname":"/openstack/index/midonet-integration-with-openstack-mitaka","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SJhLjwebdyO6iujYM","title":"OpenStack kolla deployment","pathname":"/openstack/index/openstack-kolla-deployment","siteSpaceId":"sitesp_yoqGr","description":"from RDO packages","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SJI3lMVNETK_DH_mR","title":"Magnum in RDO OpenStack Liberty","pathname":"/openstack/index/magnum-in-rdo-openstack-liberty","siteSpaceId":"sitesp_yoqGr","description":"Manual installation from source code","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SILbQ1GGrM7BThNgv","title":"Nova VNC flows under the hood","pathname":"/openstack/index/nova-vnc-flows-under-the-hood","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SIp5l1krV0VWsbf0r","title":"Ceph Ansible baremetal deployment","pathname":"/openstack/index/ceph-ansible-baremetal-deployment","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SKDMns5DH-7uwWRih","title":"Rally OpenStack benchmarking with Docker","pathname":"/openstack/index/rally-openstack-benchmarking-with-docker","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SHKlCGY4wR8kEXwTn","title":"OpenStack affinity/anti-affinity groups","pathname":"/openstack/index/openstack-affinity-anti-affinity-groups","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SGa6k3izKhDINozU4","title":"Migrate keystone v2.0 to keystone v3 OpenStack","pathname":"/openstack/index/migrate-keystone-v2.0-to-keystone-v3-openstack","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SFbdJcDT0YjqNcZ0R","title":"Neutron DVR OpenStack Liberty","pathname":"/openstack/index/neutron-dvr-openstack-liberty","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SF2J5T2M7y80xr87a","title":"OpenStack segregation with availability zones and host aggregates","pathname":"/openstack/index/openstack-segregation-with-availability-zones-and-host-aggregates","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SEi0_balwg1PpN064","title":"Nova Docker driver","pathname":"/openstack/index/nova-docker-driver","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SE4Kwb56qwGZh1J-y","title":"Murano in RDO OpenStack manual installation","pathname":"/openstack/index/murano-in-rdo-openstack-manual-installation","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SCXxNEN2BcfV5eL_r","title":"Ceph RadosGW admin Ops","pathname":"/openstack/index/ceph-radosgw-admin-ops","siteSpaceId":"sitesp_yoqGr","description":"How to use it","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1SATDYGBKTiWH540Wp","title":"Multiple store locations for glance images","pathname":"/openstack/index/multiple-store-locations-for-glance-images","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1S9dxdlDDkibTI-vHF","title":"List all tenants belonging an user","pathname":"/openstack/index/list-all-tenants-belonging-an-user","siteSpaceId":"sitesp_yoqGr","description":"Here is a simple script to list all tenants belonging an user:","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1S5uSEkOpLCLJh_o35","title":"Load balancer as a service OpenStack LbaaS","pathname":"/openstack/index/load-balancer-as-a-service-openstack-lbaas","siteSpaceId":"sitesp_yoqGr","description":"","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1S4ft4GSH9GeDB1JDb","title":"OpenStack nova API start error","pathname":"/openstack/index/openstack-nova-api-start-error","siteSpaceId":"sitesp_yoqGr","description":"Could not bind to 0.0.0.0 address all ready in use","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]},{"id":"-M1S3LzWQxKpsPxF87OR","title":"Delete OpenStack neutron networks","pathname":"/openstack/index/delete-openstack-neutron-networks","siteSpaceId":"sitesp_yoqGr","description":"Fix to unable to complete operation on subnet","breadcrumbs":[{"label":"OpenStack"},{"label":"Index"}]}]}