Clarification on the origin of `01` in this oracle padding attack?
Actually, we don't care about the amount of padding the original message had; we care whether the modified plaintext (that is, the result of the decryption of the modified ciphertext) has good padding or not.

The padding will be valid if the last block had one of these patterns:


  XX XX XX XX XX XX XX 01
  
  XX XX XX XX XX XX 02 02
  
  XX XX XX XX XX 03 03 03
  
  XX XX XX XX 04 04 04 04
  
  XX XX XX 05 05 05 05 05
  
  etc


(where XX is any byte value).  If we modify the ciphertext, and then the decryptor decrypts and packet and finds a valid padding, then we know that the value in that last block is one of those patterns.

Now, why do we initially consider one the first one, and essentially ignores the others?  Well, for a random change (that is, if the attacker is in the initial stages of that attack, and may have no information about the decryption), then the last block will have the last byte 01 with probability 1/256; the rest of the alternatives will, in aggregate, happen with probability less than 1/65280, hence with quite high probability, the ciphertext being accepted with indicate that the last byte of the plaintext was 01.