This type of passive circuit can be easily solved and expressed in a so-called low-entropy format using the fast analytical circuits techniques or FACTs. Without writing a single line of algebra, you can "inspect" the circuit and determine the transfer function. In this approach, you determine the natural time constants of the circuit by reducing the stimulus \$V_{in}\$ to 0 V. When you do that, the left terminal of \$R_1\$ is grounded. In this configuration, remove the capacitors and "look" at the resistance from their terminals. The obtained resistance multiplied by the capacitance forms the time constant \$\tau\$ we need. Here, we have two energy-storing elements (with independent state variables) so this is a 2nd-order circuit obeying the following expression for the denominator \$D(s)\$:
\$D(s)=1+s(\tau_1+\tau_2)+s^2\tau_1\tau_{12}\$
We start with \$s=0\$ for which you open all caps. The transfer function is simply:
\$H_0=\frac{R_3}{R_3+R_1+R_2}\$
If you now apply the technique consisting of "looking" at the resistance offered by the capacitors terminals while \$V_{in}\$ is 0 V, you should find:
\$\tau_1=C_1(R_1||(R_2+R_3))\$
\$\tau_2=C_2(R_3||(R_1+R_2))\$
\$b_1=\tau_1+\tau_2=C_1(R_1||(R_2+R_3))+C_2(R_3||(R_1+R_2))\$
Then, consider shorting \$C_1\$ while you look at the resistance offered by \$C_2\$ terminals in this mode. You have
\$\tau_{12}=C_2(R_2||R_3)\$
\$b_2=\tau_1\tau_{12}=C_1(R_1||(R_2+R_3))C_2(R_2||R_3)\$
Assembling these expressions, we have the complete transfer function as there is no zero in this network.
\$H(s)=H_0\frac{1}{1+s(C_1(R_1||(R_2+R_3))+C_2(R_3||(R_1+R_2)))+s^2(C_1(R_1||(R_2+R_3))C_2(R_2||R_3))}\$
This is a second-order polynomial form obeying:
\$H(s)=H_0\frac{1}{1+\frac{s}{\omega_0Q}+(\frac{s}{\omega_0})^2}\$
in which \$Q=\frac{\sqrt{b_2}}{b_1}\$ and \$\omega_0=\frac{1}{\sqrt{b_2}}\$
If \$Q\$ is sufficiently low (low-\$Q\$ approximation) you can replace the second-order polynomial form by two cascaded poles. All appears in the below picture:
If you look at the raw expression transfer function \$H_{ref}(s)\$ (using Thévenin), it perfectly matches the low-entropy version. The difference is that you now have a well-ordered transfer function letting you calculate the values for all components depending on how you want to tune this filter. What truly matters is the low-entropy well-ordered form which tells you what terms contribute gains (attenuation), poles and zeros. Without this arrangement, there is no way you can design your circuit to meet a certain goal. To my opinion, the FACTs are unbeatable to obtain these results in one clean shot. Furthermore, as you can see, I have not written a single line of algebra. All I did was inspecting the network (through small individual sketches if necessary).
You can discover FACTs further here
http://cbasso.pagesperso-orange.fr/Downloads/PPTs/Chris%20Basso%20APEC%20seminar%202016.pdf
and also through examples published in the introductory book
http://cbasso.pagesperso-orange.fr/Downloads/Book/List%20of%20FACTs%20examples.pdf