diff --git a/SOURCES/CVE-2021-33503.patch b/SOURCES/CVE-2021-33503.patch
new file mode 100644
index 0000000..d7a8b01
--- /dev/null
+++ b/SOURCES/CVE-2021-33503.patch
@@ -0,0 +1,42 @@
+From 6d2dcef3427b96c36ddfebf217f774a2c5ecad38 Mon Sep 17 00:00:00 2001
+From: Lumir Balhar <lbalhar@redhat.com>
+Date: Wed, 30 Jun 2021 09:27:07 +0200
+Subject: [PATCH] CVE-2021-33503
+
+---
+ src/pip/_vendor/urllib3/util/url.py | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/src/pip/_vendor/urllib3/util/url.py b/src/pip/_vendor/urllib3/util/url.py
+index 5fe37a7..addaeb7 100644
+--- a/src/pip/_vendor/urllib3/util/url.py
++++ b/src/pip/_vendor/urllib3/util/url.py
+@@ -63,12 +63,12 @@ IPV6_ADDRZ_RE = re.compile("^" + IPV6_ADDRZ_PAT + "$")
+ BRACELESS_IPV6_ADDRZ_RE = re.compile("^" + IPV6_ADDRZ_PAT[2:-2] + "$")
+ ZONE_ID_RE = re.compile("(" + ZONE_ID_PAT + r")\]$")
+ 
+-SUBAUTHORITY_PAT = (u"^(?:(.*)@)?(%s|%s|%s)(?::([0-9]{0,5}))?$") % (
++_HOST_PORT_PAT = ("^(%s|%s|%s)(?::([0-9]{0,5}))?$") % (
+     REG_NAME_PAT,
+     IPV4_PAT,
+     IPV6_ADDRZ_PAT,
+ )
+-SUBAUTHORITY_RE = re.compile(SUBAUTHORITY_PAT, re.UNICODE | re.DOTALL)
++_HOST_PORT_RE = re.compile(_HOST_PORT_PAT, re.UNICODE | re.DOTALL)
+ 
+ UNRESERVED_CHARS = set(
+     "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789._-~"
+@@ -374,7 +374,9 @@ def parse_url(url):
+             scheme = scheme.lower()
+ 
+         if authority:
+-            auth, host, port = SUBAUTHORITY_RE.match(authority).groups()
++            auth, _, host_port = authority.rpartition("@")
++            auth = auth or None
++            host, port = _HOST_PORT_RE.match(host_port).groups()
+             if auth and normalize_uri:
+                 auth = _encode_invalid_chars(auth, USERINFO_CHARS)
+             if port == "":
+-- 
+2.31.1
+
diff --git a/SOURCES/CVE-2021-3572.patch b/SOURCES/CVE-2021-3572.patch
new file mode 100644
index 0000000..04739c1
--- /dev/null
+++ b/SOURCES/CVE-2021-3572.patch
@@ -0,0 +1,34 @@
+From 4f0099156245ed2873d6945d5e58db741e15836d Mon Sep 17 00:00:00 2001
+From: Lumir Balhar <lbalhar@redhat.com>
+Date: Tue, 8 Jun 2021 09:51:47 +0200
+Subject: [PATCH] CVE-2021-3572
+
+---
+ src/pip/_internal/vcs/git.py | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/src/pip/_internal/vcs/git.py b/src/pip/_internal/vcs/git.py
+index 92b8457..7b3cc4a 100644
+--- a/src/pip/_internal/vcs/git.py
++++ b/src/pip/_internal/vcs/git.py
+@@ -120,9 +120,15 @@ class Git(VersionControl):
+         output = cls.run_command(['show-ref', rev], cwd=dest,
+                                  show_stdout=False, on_returncode='ignore')
+         refs = {}
+-        for line in output.strip().splitlines():
++        # NOTE: We do not use splitlines here since that would split on other
++        #       unicode separators, which can be maliciously used to install a
++        #       different revision.
++        for line in output.strip().split("\n"):
++            line = line.rstrip("\r")
++            if not line:
++                continue
+             try:
+-                sha, ref = line.split()
++                sha, ref = line.split(" ", maxsplit=2)
+             except ValueError:
+                 # Include the offending line to simplify troubleshooting if
+                 # this error ever occurs.
+-- 
+2.31.1
+
diff --git a/SPECS/python3x-pip.spec b/SPECS/python3x-pip.spec
index b4ab78e..d6b5faa 100644
--- a/SPECS/python3x-pip.spec
+++ b/SPECS/python3x-pip.spec
@@ -16,7 +16,7 @@ Name:           python3x-%{srcname}
 # When updating, update the bundled libraries versions bellow!
 # You can use vendor_meta.sh in the dist git repo
 Version:        19.3.1
-Release:        1%{?dist}
+Release:        4%{?dist}
 Summary:        A tool for installing and managing Python packages
 
 # We bundle a lot of libraries with pip, which itself is under MIT license.
@@ -91,6 +91,16 @@ Patch4:         dummy-certifi.patch
 # https://github.com/pypa/pip/pull/7359
 Patch5:         network-tests.patch
 
+# Patch for CVE-2021-3572 - pip incorrectly handled unicode separators in git references
+# Upstream PR: https://github.com/pypa/pip/pull/9827
+# Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1962856
+Patch6:         CVE-2021-3572.patch
+
+# CVE-2021-33503 Catastrophic backtracking in URL authority parser
+# Tracking bug: https://bugzilla.redhat.com/show_bug.cgi?id=1968074
+# Upstream fix: https://github.com/urllib3/urllib3/commit/2d4a3fee6de2fa45eb82169361918f759269b4ec
+Patch7:         CVE-2021-33503.patch
+
 # Downstream only patch
 # Users might have local installations of pip from using
 # `pip install --user --upgrade pip` on older/newer versions.
@@ -185,6 +195,8 @@ BuildRequires:  ca-certificates
 Requires:       ca-certificates
 Requires:  python%{python3_pkgversion}-setuptools
 
+# Require alternatives version that implements the --keep-foreign flag
+Requires(postun): alternatives >= 1.19.1-1
 # python38 installs the alternatives master symlink to which we attach a slave
 Requires: python38
 Requires(post): python38
@@ -242,6 +254,8 @@ popd
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
+%patch7 -p1
 
 # this goes together with patch4
 rm src/pip/_vendor/certifi/*.pem
@@ -366,9 +380,9 @@ if [ $1 -eq 0 ]; then
           grep -c "^/usr/bin/python3.8 - priority [0-9]*"`
 
     if [ $EXISTS -ne 0 ]; then
-        alternatives --remove-slave python3 %{_bindir}/python3.8 \
+        alternatives --keep-foreign --remove-slave python3 %{_bindir}/python3.8 \
             pip3
-        alternatives --remove-slave python3 %{_bindir}/python3.8 \
+        alternatives --keep-foreign --remove-slave python3 %{_bindir}/python3.8 \
             pip-3
     fi
 fi
@@ -403,6 +417,18 @@ fi
 %{python_wheeldir}/%{python_wheelname}
 
 %changelog
+* Mon Aug 02 2021 Tomas Orsava <torsava@redhat.com> - 19.3.1-4
+- Adjusted the postun scriptlets to enable upgrading to RHEL 9
+- Resolves: rhbz#1933055
+
+* Wed Jun 30 2021 Lumír Balhar <lbalhar@redhat.com> - 19.3.1-3
+- Fix for CVE-2021-33503 Catastrophic backtracking in URL authority parser
+Resolves: rhbz#1968074
+
+* Tue Jun 08 2021 Lumír Balhar <lbalhar@redhat.com> - 19.3.1-2
+- Fix for CVE-2021-3572 - pip incorrectly handled unicode separators in git references
+Resolves: rhbz#1962856
+
 * Thu Apr 23 2020 Lumír Balhar <lbalhar@redhat.com> - 19.3.1
 - Rebase to 19.3.1 to enable support for manylinux2014
 Resolves: rhbz#1827623