Cover the chicken legs with boiling water for 30 seconds until the skin tightens, then remove and pat dry. Transfer to a clean bowl and marinate with the 4 tbsp dark soy and the ground white pepper.
Bash the spring onions with the back of a knife and slice lengthways into thirds. Roughly chop the ginger, garlic and shallots.
On medium heat, add the vegetable oil and rock sugar to a wok, breaking the sugar into small pieces, and stir until lightly caramelised.
Add the spring onion, ginger, garlic and shallot and fry for 3 minutes (add a touch of water if needed).
Add the chicken legs skin side down and leave untouched for 2 minutes. Pour in the marinade, light soy sauce, dark soy sauce, Shaoxing wine and water, along with the cloves, star anise and cinnamon stick.
Once boiling, turn the heat to low, cover and braise for 35 minutes, turning the chicken halfway through.
Remove the chicken to cool and strain out the vegetables and spices. Mix 2 tbsp of the sauce with the 2 tbsp cornstarch, stir back into the sauce and cook until thickened, then remove from the heat.
Shred the chicken and serve over steamed rice with the sauce spooned over.